KING OF THE HILL A film review by Scott Renshaw Copyright 1993 Scott Renshaw
Starring: Jesse Bradford, Jeroen Krabbe, Lisa Eichhorn, Spalding Gray, Karen Allen. Screenplay/Director: Steven Soderbergh.
It's called the sophomore slump, and it's a pitfall common to all contemporary art forms. A writer has a lifetime to create the breakthrough debut, and eighteen months to create a follow-up everyone will expect to be equally good; as just the most recent cinematic example, witness John Singleton's POETIC JUSTICE. Writer/director Steven Soderbergh turned heads with his first feature, 1989's SEX, LIES AND VIDEOTAPE, then stumbled with the atmospheric but empty KAFKA. In such cases, the third try often will tell which was the exception, and which the rule. If this is true of Soderbergh, the evidence that this is one auteur with staying power is KING OF THE HILL, a beautiful and darkly poetic adaptation of A. E. Hotchner's memoir of life during the Great Depression.
Our tour guide through 1933 St. Louis is Aaron Kurlander (Jesse Bradford), a bright and creative twelve-year-old. His father (Jeroen Krabbe) is an unemployed salesman, forcing the family to live in the gloomy Empire Hotel. When his younger brother (the adorable Cameron Boyd) is sent away to live with relatives, Mom (Lisa Eichhorn) gets sick and Dad gets a traveling salesman job, Aaron is left by himself. The film follows his encounters and friendships with several fellow residents of the Empire, including larcenous but good-hearted Lester (Adrien Brody), well-heeled alcoholic Mr. Mungo (Spalding Gray) and Ella (Amber Benson), a gawky, sad-eyed young girl with a big crush on Aaron. They all try to stay one step ahead of Ben (Joseph Chrest), the Empire's reptilian bellhop who locks out delinquent guests at a moment's notice.
KING OF THE HILL's greatest triumph is one of tone. As somber as the subject matter could have been, Soderbergh opts neither for grittiness nor Spielbergian sentimentality.  There is as much humor as their is sadness in KING OF THE HILL, perhaps more. There are some truly charming moments: Aaron's 8th-grade graduation ceremony; Aaron and Lester saving the Kurlander's car from repossession; Aaron improvising an exciting career for his father to a wealth classmate between swigs of Coca-Cola. All are lovingly photographed by Elliot Davis and accented by a giddy Cliff Martinez score reminiscent of Randy Newman. To be certain, this isn't an entirely pleasant film; there are some dark and bittersweet moments. However, the balance is maintained so that it feels (at the risk of sounding cliche) like life.
The splendid ensemble cast only adds to the richness. Heading the list is Bradford, perfectly cast as the imaginative Aaron. He manages to capture both a savvy born of necessity and pubescent awkwardness with understated style. Krabbe is solid as the father unaware of how his well-intentioned actions are hurting his son; Eichhorn is good but misused as the fragile mother. Of the hotel's denizens, I was particularly taken with Amber Benson as Ella, who conveys a heartfelt desperation for contact that generates some touching scenes with Aaron. Spalding Gray, as he does when he's cast in a film, basically plays Spalding Gray. Also worth noting is Karen Allen in an appealing turn as Aaron's supportive teacher.
I have no frame of reference for the historical accuracy of KING OF THE HILL, but I do know that it *felt* real. The tent cities, railyard Hoovervilles and slum hotels coexist with mansions in casually accepted fashion, free of some "issue" of class conflict. There are also intriguing character types, particularly the fascistic beat cop who treats his street like a fiefdom. In short, KING OF THE HILL feels like a man's vivid memory of a difficult but enriching boyhood, told with power and grace. Soderbergh has a gift for visual narrative, and it makes for an outstanding film.
Third time is a charm Steven. Keep it up.
On the Renshaw scale of 0 to 10 tent cities: 9.
-- Scott Renshaw Stanford University Office of the General Counsel
.
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Guidance
Guidance to help providers meet the requirements for ILR data returns.
PDF , 2.06MB , 126 pages
If you use assistive technology (such as a screen reader) and need a version of this document in a more accessible format, please email<EMAIL_ADDRESS>. Please tell us what format you need. It will help us if you say what assistive technology you use.
PDF , 974KB , 34 pages
If you use assistive technology (such as a screen reader) and need a version of this document in a more accessible format, please email<EMAIL_ADDRESS>. Please tell us what format you need. It will help us if you say what assistive technology you use.
PDF , 250KB , 9 pages
If you use assistive technology (such as a screen reader) and need a version of this document in a more accessible format, please email<EMAIL_ADDRESS>. Please tell us what format you need. It will help us if you say what assistive technology you use.
MS Excel Spreadsheet , 549KB
If you use assistive technology (such as a screen reader) and need a version of this document in a more accessible format, please email<EMAIL_ADDRESS>. Please tell us what format you need. It will help us if you say what assistive technology you use.
PDF , 236KB , 3 pages
If you use assistive technology (such as a screen reader) and need a version of this document in a more accessible format, please email<EMAIL_ADDRESS>. Please tell us what format you need. It will help us if you say what assistive technology you use.
These documents support further education providers (publicly funded colleges, training organisations, local authorities and employers) to understand the details of the data about learners and their learning that must be collected.
Published: 27 May 2016
Updated: 31 January 2017
From: Skills Funding Agency
Part of: Individualised Learner Record (ILR)


Project: ART-004: Pipeline - Metrics Project
Contact: Tim Sherburne
Powered By GENESYS
. Generated 12 May 2020.
Folders
|
Packages
AttackVector
Component
Context
ControlAction
Document
DomainSet
Exit
Feedback
Function
Hazard
Item
Link
Loss
LossScenario
Package
ResilientMode
UnsafeAction
CSRM
1-System
Architecture
Behavior
2-Risk
3-Resilience
4-Cyber


Student-Teacher Record Manager
My Profile
Home
Faculty
Student
Course
Subject
Assign Faculty
My Profile
🔍
Assigned Faculty List
Course name
Semester
Faculty Name
Subject Name
Subject Code
Total class
Action
Assign Faculty
Course Name:
Semester:
Faculty Name*:
This field is required.
Subject Name:
Subject Code:
Total Class:


At home the rabbits hiss a salad.
chisels chip at a thick curd,
My sisters stick, my bowl staggers,
willows shell me to the ground
At the milk pan deer are crowbars,
at the milk pan my melon sobs.
My child has seen me through the willows,
yet I never planted him...
My son has hissed me from the salad..
Apple twigs squirt porcupines
Rabbits at the milk pan, Daughter
rabbits shake the blankets down.


Getting Started¶
Installation and requirements¶
Scheme For Max is built for Max 8 and above, and is available as a prebuilt external for both Windows and OS X. (Note that it has not been tested on Big Sur or M1 Apples). To get started, visit the GitHub site, download the latest release, and uncompress the files in your Max “Packages” directory. Once you have done this, it should show up in the Max Package Manager, and you should be able to create an s4m object without errors. There is a fairly comprehensive help file as well that should “just work”. If you are not familiar with installing Max externals, there are tutorial videos walking one through the installation process and first steps for Windows and OSX on the Music With Lisp YouTube channel.
The for documentation of all the Scheme For Max specific functions, and further details on Scheme For Max, check the Scheme For Max Documentation. The docs do not, however, teach one Scheme, so that’s what this book is for!
First patchers¶
To run these examples, you should be at a Scheme For Max interpreter. I recommend opening Max and having both a file editor and the built in s4m.repl bpatcher open, with the Max console in view. You’ll want to be able to send lines of code to the interpreter and see the results in the console. If you haven’t already, I recommend watching the tutorial videos on the “Music With Lisp” youtube channel on installation and first steps. These will get you up and running, so that you are sending code to your s4m object and seeing the results in the Max console. To send code from your editor to s4m, check out the video on editor integration. If you plan on using S4M extensively, it’s worth getting editor integration going as it makes development a lot more pleasant. But you can certainly get started just using the s4m.repl bpatcher too.
In the code sections in this tutorial, I show code as we send it to the intepreter and the results back from the interpreter. Lines that start with a semi-colon are comments and don’t get run by the interpreter. Lines with no prefixing are expressions we send to s4m, whether from the built in text editor bpatcher or from our editor over a network connection. (Or sent to the interpreter some other way, perhaps from a Max message - see the Scheme For Max documentation if you’re not clear how to do this). Let’s quickly make sure we’re clear on this:
; a comment, you can skip typing this in
; an expression we send to s4m, it has no prefix
(+ 1 1)
; its return value from the interpreter
s4m> 2
Some Scheme expressions have side effects. For example, the post function takes any number of arguments and logs them as strings to the Max console. Console output starts with s4m: (note the colon)
; an expression asking the intepreter to log to the console
(post "testing" 1 2)
s4m: testing 1 2
If you have set the s4m attribute log-null to true (you can use the checkbox in the inspector), the console will also log the return values from any functions that return the null list. Normally when we work in Scheme For Max, we won’t want to do this, so the default setting is for null values to be hidden from the console, but for the purpose of this tutorial, I recommend turning log-null on so you have a visual indication of the returned value. The post function is called only for its side effect (logging), so it returns the null list. With log-null on, a call to post will thus show:
; post prints output, and returns the null list ()
(post "hello-world")
s4m: hello-world
s4m> ()
If you are able to successfully duplicate the above, we’re ready to begin!


runlevel
Section: Maintenance Commands (8)Updated: 2009-07-09
Index Return to Main Contents
NAME
runlevel - output previous and current runlevelSYNOPSIS
runlevel [OPTION]... [UTMP]DESCRIPTION
runlevel reads the system UTMP file, which defaults to /var/run/utmp when no alternate filename is given, to locate the most recent runlevel record.The previous and current runlevel from that record are output separated by a single space. If there is no previous runlevel in the record, the letter N will be substituted.
If no runlevel record can be found, runlevel outputs the word unknown and exits with an error.
During system boot, the environment variables RUNLEVEL and PREVLEVEL will be set by the init(8) daemon, these come from the runlevel(7) event generated by telinit(8) or shutdown(8).
When these environment variables are set, runlevel will output the values from these instead. Thus runlevel can be used in rc scripts as a replacement for the System-V who(1) -r command.
OPTIONS
- --quiet
-
Does not output the current and previous runlevel, nor does it output
unknown
in the case of error (but it will exit with an error code).
This may be used to test for the presence of a runlevel entry, or to check for errors reading from the file.
EXIT STATUS
runlevel will exit with status 0 if a UTMP record was found, otherwise it will exit with status 1.ENVIRONMENT
- RUNLEVEL
- runlevel will read the current runlevel from this environment variable if set in preference to reading from /var/run/utmp
- PREVLEVEL
-
runlevel
will read the previous runlevel from this environment variable if
RUNLEVEL
was given, in preference to reading from /var/run/utmp
FILES
- /var/run/utmp
- Where the current and previous runlevels will be read from.
NOTES
The Upstart init(8) daemon does not keep track of runlevels itself, instead they are implemented entirely by its userspace tools.A change of runlevel is signalled by the runlevel(7) event, generated by either the telinit(8) or shutdown(8) tools. This event includes the new runlevel in the RUNLEVEL environment variable, as well as the previous runlevel (obtained from their own environment or from /var/run/utmp) in the PREVLEVEL variable.
As well as generating the event, both tools write the new runlevel back to /var/run/utmp and append a new entry to /var/log/wtmp.
AUTHOR
Written by Scott James Remnant<EMAIL_ADDRESS>BUGS
Report bugs at <https://launchpad.net/upstart/+bugs>COPYRIGHT
Copyright © 2009 Canonical Ltd.This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
SEE ALSO
runlevel(7) init(8) telinit(8) shutdown(8) who(1)
Index
- NAME
- SYNOPSIS
- DESCRIPTION
- OPTIONS
- EXIT STATUS
- ENVIRONMENT
- FILES
- NOTES
- AUTHOR
- REPORTING BUGS
- COPYRIGHT
- SEE ALSO
This document was created by man2html, using the manual pages.
Time: 05:34:29 GMT, December 24, 2015


Hey I'm Jigar. I work as a freelancer for designing various websites.
I enjoy writing front-end code and deploying with these technologies.
Jigar Patel


CPU Traffic
90%
Likes
41,410
Sales
760
New Members
2,000
Faces Detected
Alarm Control Panel
Alarm Status:
Create New Alert
Actions


Expand dataframe with indices and unit conversions
# GMT adjust
time_zones <-
read_rds("data/select_bases.rds") %>%
dplyr::select(site_name, centroid) %>%
mutate(time_zone = lutz::tz_lookup(centroid, crs = 4326, method = "accurate")) %>%
as_tibble() %>%
dplyr::select(site_name, time_zone) %>%
mutate(site_name = stringr::str_replace_all(site_name, " ", "_"),
site_name = stringr::str_to_lower(site_name))
time_zones
lutz::tz_plot("America/New_York")
lutz::tz_plot("America/Chicago")
lutz::tz_plot("America/Denver")
lutz::tz_plot("America/Los_Angeles")
This will serve as an input to WBGT estimate calculations.
nldas_df <- read_rds("data/nldas_df.rds")
# Inspect for missing values
nldas_df_end2019 %>% inspectdf::inspect_na()
# timezones cannot be vectorized in lubridate, therefore `case_when` used
# https://community.rstudio.com/t/working-with-timezones-in-lubridate/4260
# https://stackoverflow.com/questions/55352166/how-to-use-lubridate-as-datetime-function-in-combination-with-dplyr-mutate-and-c
# (Without the additional `as_datetime(as.character))`, each value receives the result of the first item in case_when- Eglin converts to EST instead of CST)
nldas_time_zone <-
nldas_df_end2019 %>%
mutate(utc_dttm = lubridate::ymd_hm(date_time)) %>%
dplyr::select(utc_dttm, installation, everything(), -date_time) %>%
left_join(time_zones, by = c("installation" = "site_name")) %>%
dplyr::mutate(local_dttm = dplyr::case_when(
.$time_zone == "America/New_York" ~ as.character(with_tz(.$utc_dttm, tz = "America/New_York")),
.$time_zone == "America/Chicago" ~ as.character(with_tz(.$utc_dttm, tz = "America/Chicago")),
.$time_zone == "America/Denver" ~ as.character(with_tz(.$utc_dttm, tz = "America/Denver")),
.$time_zone == "America/Los_Angeles" ~ as.character(with_tz(.$utc_dttm, tz = "America/Los_Angeles"))),
local_dttm = lubridate::ymd_hms(local_dttm)) %>%
dplyr::select(utc_dttm, local_dttm, everything(), -time_zone)
From original NLDAS variables, add windspeed, temp in F and C, relative humidity, dew point (C), heat index (F)
nldas_wide_end2019 <-
nldas_time_zone %>%
mutate(windspeed = sqrt(UGRD^2 + VGRD^2),
tmp_f = weathermetrics::convert_temperature(TMP, old_metric = "kelvin", new_metric = "fahrenheit"),
tmp_c = weathermetrics::convert_temperature(TMP, old_metric = "kelvin", new_metric = "celsius"),
rh = humidity::SH2RH(SPFH, TMP, p = PRES, isK = TRUE),
dp_c = humidity.to.dewpoint(rh = rh, t = tmp_c, temperature.metric = "celsius"),
heat_index = weathermetrics::heat.index(t = tmp_f,
rh = rh,
temperature.metric = "fahrenheit",
output.metric = "fahrenheit",
round = 2))
# Inspect missing data: dew point/ heat index if relative humidity below 0% or above 100%
nldas_wide_end2019 %>%
inspectdf::inspect_na()
nldas_wide %>%
filter(is.na(dp_c)) %>%
arrange(desc(rh))
# Restrict RH to 100%
nldas_wide_end2019 <-
nldas_time_zone %>%
mutate(windspeed = sqrt(UGRD^2 + VGRD^2),
tmp_f = weathermetrics::convert_temperature(TMP, old_metric = "kelvin", new_metric = "fahrenheit"),
tmp_c = weathermetrics::convert_temperature(TMP, old_metric = "kelvin", new_metric = "celsius"),
rh = humidity::SH2RH(SPFH, TMP, p = PRES, isK = TRUE),
rh = case_when(
rh > 100 ~ 100,
rh <= 100 ~ rh
),
dp_c = humidity.to.dewpoint(rh = rh, t = tmp_c, temperature.metric = "celsius"),
heat_index = weathermetrics::heat.index(t = tmp_f,
rh = rh,
temperature.metric = "fahrenheit",
output.metric = "fahrenheit",
round = 2))
nldas_wide %>%
inspectdf::inspect_na()
nldas_wide_end2019 %>% summary()
We will apply a wrapper of the C code developed by Liljegren et al to estimate WBGT from datasets of standard meterological measurements . This product was produced by UChicago Argonne, LLC under contract with the Department of Energy (GitHub link). The source code is available at: (link).
In addition to the weather variables and time, we will need lat
and lon
columns for the WBGT function.
# Add lat/lon to nldas dataframe
# Create lat lon table of centroids
base_coordinates <-
read_rds("data/select_bases.rds") %>%
as_tibble() %>%
dplyr::select(site_name, centroid) %>%
mutate(longitude = unlist(map(centroid,1)),
latitude = unlist(map(centroid,2)),
site_name = stringr::str_replace_all(site_name, " ", "_"),
site_name = stringr::str_to_lower(site_name)) %>%
dplyr::select(-centroid)
base_coordinates
WBGT with mdljts
wrapper. Create a dataframe with the required columns for the wbgt_df
function.
# Create dataframe with columns needed for wbgt::wbgt_df (mdljts wrapper)
# Join lat and lon
nldas_wide_end2019 <-
nldas_wide_end2019 %>%
left_join(base_coordinates, by = c("installation" = "site_name")) %>%
dplyr::select(utc_dttm, local_dttm, installation, longitude, latitude, everything())
nldas_wide_end2019
# Create datframe for `wbgt_df` function
wbgt_mdljts_df_end2019 <-
nldas_wide_end2019 %>%
mutate(
year = lubridate::year(local_dttm),
month = lubridate::month(local_dttm),
day = lubridate::day(local_dttm),
hour = lubridate::hour(local_dttm),
minute = lubridate::minute(local_dttm),
gmt = lubridate::hour(utc_dttm),
avg = 60,
lat = latitude,
lon = longitude,
solar = DSWRF,
pres = PRES / 100,
Tair = tmp_c,
relhum = rh,
speed = windspeed,
zspeed = 10,
dT = 0,
urban = 0) %>%
dplyr::select(year:urban)
wbgt_mdljts_df_end2019
# Execute WBGT wrapper on entire dataframe
wbgt_mdljts_end2019 <-
wbgt::wbgt_df(wbgt_mdljts_df_end2019) %>%
dplyr::select(wbgt)
# Bind WBGT column to NLDAS dataframe and add Fahrenheit conversion
nldas_wide_end2019 <-
nldas_wide_end2019 %>%
bind_cols(wbgt_mdljts_end2019) %>%
mutate(wbgt_f = weathermetrics::convert_temperature(wbgt, old_metric = "celsius", new_metric = "fahrenheit"))
# write_rds(nldas_wide_end2019, path = "data/nldas_wide_end2019.rds")
# View "wide" NLDAS dataframe
#
nldas_wide <-
read_rds("data/nldas_wide.rds")
nldas_wide
nldas_wide_end2019 %>% summary
# Inspect for missing values
nldas_wide_end2019 %>%
inspectdf::inspect_na()
# Inspect date coverage
## Unique dates
nldas_wide_end2019 %>%
group_by(installation) %>%
summarize(unique_utc = n_distinct(utc_dttm)) %>%
arrange(unique_utc)
nldas_wide %>%
group_by(installation) %>%
summarize(unique_local = n_distinct(local_dttm)) %>%
arrange(unique_local)
## Duplicate dates
dup_times <-
nldas_wide_end2019 %>%
group_by(installation) %>%
janitor::get_dupes(local_dttm)
dup_times %>% count(local_dttm)
# Duplicates present in local time, occur at 1am local during Oct/Nov time change
# Mean temperature (K) from Jan 1990 - July 2019 (year-round)
nldas_wide %>%
group_by(installation) %>%
summarise(mean_tmp = mean(TMP)) %>%
arrange(desc(mean_tmp))
# Mean WBGT (F) from Jan 1990 - July 2019 (year-round)
nldas_wide %>%
group_by(installation) %>%
summarise(mean_wbgt_f = mean(wbgt_f)) %>%
arrange(desc(mean_wbgt_f))
# Gather by local time and location
# (90+ million rows for 25 locations, 1990-2018 hourly)
nldas_long_end2019 <-
nldas_wide_end2019 %>%
dplyr::select(installation, utc_dttm, tmp_f, rh, heat_index, wbgt_f) %>%
tidyr::gather(key = "variable", value = "value", tmp_f:wbgt_f)
write_rds(nldas_long_end2019, path = "data/nldas_long_end2019.rds")
nldas_long <-
read_rds("data/nldas_long.rds")
nldas_long_end2019
nldas_wide <-
read_rds("data/nldas_wide.rds")
nldas_long <-
nldas_wide %>%
dplyr::select(installation, utc_dttm, tmp_f, rh, heat_index, wbgt_f) %>%
tidyr::gather(key = "variable", value = "value", tmp_f:wbgt_f)
nldas_long <-
nldas_long %>%
bind_rows(nldas_long_end2019)
write_rds(nldas_long, path = "D:/nldas_long.rds")
nldas_wide <-
nldas_wide %>%
bind_rows(nldas_wide_end2019)
nldas_wide
# write_rds(nldas_wide, path = "data/nldas_wide.rds")
Create List-column for installation/variable pairs
# Increase memory limit
memory.limit()
memory.limit(size = 56000)
nldas_nest <-
nldas_long %>%
dplyr::select(installation, variable, utc_dttm, value) %>%
nest(., data = utc_dttm:value)
# write_rds(nldas_nest, path = "data/nldas_nest.rds")
nldas_nest <-
read_rds("data/nldas_nest.rds")
nldas_nest
nldas_nest %>%
filter(installation == "eglin_afb" & variable == "tmp_f") %>%
pull(data)


THREE.ConstantSpline.js demo - Surfaces
Click space or touch the screen to create a new surface | click or touch and drag to rotate


I think that these stories about Naltrexone are very important. Mine is a little different.
I had been taking oxycontin and dilaudid for years, but I had been struggling to get off them almost from the start. I had been taking either 150 mg Dilaudid (or the equivalent amount of oxy) daily for about 6 months solid. I had booked a trip to Africa to detox and I could not get a legitimate prescription for that amount to carry over the border. My supplier was running low, so I had no choice but to try to rapid detox myself. The doctor suggested that I could squeeze by taking the Naltrexone after being off opiates for 5 days, the pharmacist told me 10 days clean first.
After ZERO days clean, I woke at 8 am Saturday morning (flight scheduled for Tuesday morning). I immediately took a tranquilizer (clonazapam) and after waiting 1/2 hour, I took 1/2 of a Naltrexone tablet. After 10 minutes the floor fell out of my existance. I could not move from the couch. I puked and puked actual projectile vomiting, right on the floor beside my couch in my living room. I barely was capable of turning my head to make sure the vomit did not land on me or choke me. Never-the-less, I almost did choke. I had never puked like that before. It just kept coming and coming and I could not get a breath in edgewise.
A friend came over and an found me on the couch puking again about 10 minutes to 1 hour later. Somehow they managed to help me upstairs to the bedroom and washroom area. I sat on the toilet as best as I could and PEED out my arse-hole for about 15 minutes then sat for another hour itermitently doing the same thing. All the while I was experiencing all the other typical withdrawl symptoms TIMES 10!
I somehow got cleaned up, I think my friend helped, and into the next room, which was the bedroom. He put a big puke bucket by the side of the bed, asked if I needed to get to the hospitol - I declined. He left. I remained in bed, in a delerium, missing the puke bucket a few times more. At about 6 pm, I begged someone to come over who had some dilaudid and they did. They gave me my regular dose for an evening. I managed to keep it down! It was enough to keep the worst of the withdrawl pain at bay.
The 1/2 pill's effects lasted a couple of days; slowly tapering off and allowing the opiates to have more and more effect. I missed my flight to Africa. I got clean a month later by heading to the bush on the other side of the continent (a cabin with a jacuzzi and a swimming pool).
Watch yourself around Naltrexone!
Experience Reports are the writings and opinions of the individual authors who submit them.
Some of the activities described are dangerous and/or illegal and none are recommended by Erowid.


{% if include.entry %} {% assign entries = include.entry | split: "#" %}
{{ include.name }}{% if include.plural and entries.size > 1 %}s{% endif %}: {{ entries | join: "" | markdownify | remove: "
" | remove: "


Queen's corgis each had a special menu with royal chefs preparing lavish meals
The Queen owned generations of corgis for almost 80 years - and they enjoyed a very special diet
by Jane Lavender, https://www.facebook.com/dailymirror/Living in palaces and having acres of space to roam free in, the Queen's corgis were some of the most pampered pooches in Britain.
Her Majesty had her beloved breed at her side for the best part of eight decade.
Tragically, her final Corgi, Willow, had to be put to sleep last year - a death that is said to have hit the Queen "extremely hard".
The dogs have been a constant in the monarch's life since she was given Susan as a present on her 18th birthday.
So it will come as no surprise that the adorable dogs also had only the very best when it came to their meal times.
As well as meticulously checking what the royal household will be eating each week, the Queen also insisted her beloved corgis had their own menus.
Not only that, what they ate was pretty special too.
Former chef Darren McCrady said: "They corgis have their own menu.
"One day they'll have lamb, one day beef and then another, chicken."
And how their doggy dinners are prepared is also very particular.
Darren said: "We had to make sure that all the meat was cut very finely and diced so there were no bones because we couldn't have them choking."
And Her Majesty was even happy for her dogs to share the limelight with her.
On her 90th birthday, as well as being surrounded by her grandchildren, the official photo of the Queen also featured the corgis on the steps of Wndsor Castle.
The Queen first fell in love with the breed when she was a child and fell in love with her father's corgi, Dookie.
During her reign she has owned more tha 30 of the dogs and many of them, including Willow, were descendants of the first she owned, Susan.
Susan even travelled with the Queen and Prince Philip on their honeymoon.
The Queen made the difficult decision to stop breeding the Pembroke Welsh corgis four years ago amid fears she could trip over one and injure herself.
It has also been claimed she also didn't want to leave any of her beloved pets behind when she dies.
However, four years ago, Her Majesty, couldn't resist adopting a corgi, Whisper, when it's owner, Sandringham gamekeeper Bill Fenwick, died aged 93.
The Queen is said to have given Bill and his wife Whisper as a present.
Whisper passed away aged 12.


Command Line Reference¶
The titan
command line is the primary tool for managing repositories and
commits. While there are a number of detailed subcommands, there are some
global options as well.
Note
The --help
option can be used to provide more detail about subcommands
and their options, such as titan run --help
or titan remote --help
.
Syntax¶
titan --help
titan --version
titan subcommand ...
Options¶
- --version
Display the titan version and exit.
- --help, -h
Display available subcommands.
Subcommands¶
- titan abort
- titan checkout
- titan clone
- titan commit
- titan context default
- titan context install
- titan context ls
- titan context uninstall
- titan delete
- titan cp
- titan install
- titan log
- titan ls
- titan migrate
- titan pull
- titan push
- titan remote add
- titan remote log
- titan remote ls
- titan remote rm
- titan rm
- titan run
- titan start
- titan status
- titan stop
- titan tag
- titan uninstall
- titan upgrade


|
Board before engine move
|
Engine move
|
Reply to engine
|
Engine reply
|
Reply to engine
|
|---|---|---|---|---|
|
Glad you asked!
TutorAI
works by generating a tree of all legal moves,
then evaluating all the deepest-level boards in the tree by considering both material and position.
At that point, the engine selects the line that results in what it thinks the best play by both
players is (shown above).
(Note: You may notice that TutorAI sometimes thinks you'll make a very confusing move at the very end of its evaluation– this is because it cannot look one move further so any move that captures material is viewed as a good move) The explanation you see is essentially a report of the difference in material and position of certain types of pieces, compared between the board before TutorAI moved and two turns after it moves. In other words, it tells you the benefits of this move that convinced the engine to choose it. For black, it tells you which piece type(s) is/are improved materially and/or positionally, and inversely for white, it tells you which piece type(s) is/are worsened matierlaly and/or positionally. With this information, you can get a good idea of why TutorAI makes the moves it does, and in turn, start applying the same proactive thinking to your own playing. Have fun! |


Welcome to the RaspberrySTEM Projects Guide!
This guide is available both as part of your RaspberrySTEM IDE and on our website at:
http://www.raspberrystem.com/guide
The goal of the RaspberrySTEM is to provide a step-by-step roadmap to learning the key principles of programming and electronics, and this guide is that roadmap. Before we get started, here are a few notes and thoughts on how to make the best use this guide and the RaspberrySTEM kit:
While you’re welcome to skip around this guide as you please, if you have no previous experience with programming or electronics, we recommend that you read and follow the projects in this guide in the order in which they’re presented. The guide is designed to build on itself, and skipping sections may make it difficult to fully understand later concepts and projects in the guide.
This guide is broken up into sections – some sections are labeled, “Concepts” and some are labeled “Projects.” The concepts are the important principles to learn prior to doing the Projects, and we have attempted to include the Concepts …
Throughout the guide, we provide links to other resources that can be used to round out your understanding of the concepts being presented.
…


This project mainly focus on establishing a mobile application to prevent unintended event when the older people falling down on the ground suddenly.
This system mainly has three users: i) an older person ii) caregivers and iii) family members.
The older person carries a smart phone and the system should analyse data collected from the mobile phone sensors to determine the mobility related measures of the person. Based on these measures, the system should alert the caregiver and the family member when there is a significant change in the mobility is recognized.
The mobile phone should also be able to detect falls. In case of a fall the system waits 2 minutes before alerting the caregiver and the family member, allowing the older person time to disable the notification. This notification should contain information location information and preferably a closest land mark (such as a nearby store or a bank) so that the caregiver and the family member can easily identify the location of the fall. All the emergency notifications should be sent using short message service (SMS). Alternatively, we should be able to configure the app such that in case of an adverse event, e.g. a fall, the phone attempts to call any one of 5 emergency contacts previously set on the app. Most importantly, the user interface of the app should be very easy to use from a patient point of view.
The caregiver is the main information receiver of this system. The caregiver should be able to view the daily walking duration and the average walking speed of the person. Furthermore, caregiver should be allowed to see all the fall incidents irrespective of whether they are notified or not.
This system mainly relies on human activity recognition. First, the system needs to query the sensors in the mobile phone to capture motion. In order to identify walking related measures, the system should be able to identify walking activity among many other activities. Then the system must determine whether the waking pattern is significantly different to the initial walking pattern. These involve classification and anomaly detection.
The system should periodically upload the processed information to a server to be accessed by caregivers. There are two user interfaces, one of the older people to configure caregiver and family member contact details, to view falls incidents and walking durations. The other interface is for the caregiver; this needs to support monitoring of multiple older persons and at a given instance information related to a single person must be shown. Furthermore, this should provide facilities to add and remove monitored persons.


A healthy diet is essential for good health and nutrition. It protects you against many chronic noncommunicable diseases, such as heart disease, diabetes and cancer. Eating a variety of foods and consuming less salt, sugars and saturated and industrially-produced trans-fats, are essential for healthy diet.
Education is the primary source for children to keep their life in safe way. This project provides education material to poor children upto elementary section. Basic education material required for their studies without any interruption is our goal.
Children and young people have the same general human rights as adults and also specific rights that recognize their special needs. Children are neither the property of their parents nor are they helpless objects of charity. They are human beings and are the subject of their own rights.
Most health services are found in hospitals, clinics and medical centers run either by the government or the private sector. Hospitals normally provide emergency, secondary, and tertiary medical services while health centers provide primary care and some basic treatment or first aid.Health facilities play a very significant role in the mitigation of disasters because of their particular function in treating the injured and handling outbreaks of disease.


iReport is a platform provided to bring any form of corruption or situations that requires government intervention to the notice of appropriate authorities
Simply Sign Up to get started


Contribution: Solo Developer
Description: This is a very simple app that allows teachers to track parent emails for each student. The authenticaton system was built from scratch only for learning purposes rather then using something like devise. Minitest was used for TDD. Technologies used: Ruby on Rails, Ruby, Bootstrap, Minitest


Open Source is at it's core, a set of values. This is the standard we hold ourselves to.
If you want to be part of this effort and you agree with the following, dive in!
Our Goals
- Deliver a clean, fast and excellent implementation of the Blaze CSS 2 components as Riot tags
- Document the use of the tags well and clearly to speed your use of the code
- Make the API, code, defaults, etc. as logical and simple as possible so you write less code.
- Update dependencies, such as ChartJS reasonably regularly (there is a balance between updates and forcing changes in your code if those updates require that)
Keep Promises
Open Source is a community effort. We firmly believe in software by contract.
This means that if we promise a feature it should work to the very best that it can.
It also means that in every case possible, we will be backwards compatible, unless there is a
damn good reason to break that promise. The only really good reason, in our view, is
to improve the service the software offers you, or take advantage of new technologies.
Integrity
- Acknowledge other sources and licenses, accurately link to the correct information
- Provide as good a set of docs as we can to help the developer kick off faster
- If something is broken we will say so, along with an estimate of a fix, if possible.
Our Values
This code of conduct outlines our expectations for participants within the RiotGear2 community.
We are committed to providing a welcoming and inspiring community for all and expect our team code to be honored.
Our open source community strives to:
- Be friendly and patient.
- Be welcoming: We strive to be a community that welcomes and supports people of all backgrounds and identities without exception.
- Be considerate: Your work will be used by other people, and you in turn will depend on the work of others. Any decision you take will affect users and colleagues, and you should take those consequences into account when making decisions.
- Remember that we’re a world-wide community, so you might not be communicating in someone else’s primary language.
- Be respectful: Not all of us will agree all the time, but disagreement is no excuse for poor behavior and poor manners.
- Be careful in the words that we choose: we are a community of professionals, and we conduct ourselves professionally. Be kind to others. Always.
- Try to understand why we disagree: Disagreements, both social and technical, happen all the time. It is important that we resolve disagreements and differing views constructively.
What We Will Never Accept Here
- Gossiping about other members: we are here to deliver a software project
- Offensive comments related to gender, gender identity and expression, sexual orientation, disability, mental illness, neuro(a)typicality, physical appearance, body size, race, age, regional discrimination, political or religious affiliation
- Unwelcome comments regarding a person’s lifestyle choices and practices, including those related to food, sexual preference, health, parenting, drugs, and employment
- Physical contact and simulated physical contact (eg, textual descriptions like “hug” or “backrub”) without consent or after a request to stop
- Threats of violence, both physical and psychological
- Incitement of violence towards any individual, group, race, or religion
- Sustained disruption of discussion
- Unwelcome sexual attention, including gratuitous or off-topic sexual images or behaviour
- Pattern of inappropriate social contact, such as requesting/assuming inappropriate levels of intimacy with others
- Continued one-on-one communication after requests to cease
If we find our members breaking our team code repeatedly, we reserve the right to remove them from contributing.
Suggestions
If you'd like to suggest new components or enhancements to existing ones please
raise an issue or talk about them in the
forum.


Thinking about taking on a big task can be daunting. Take smaller steps to reduce stress and have fun along the way.
By taking small steps along the way, you won't realise how much more you can achieve.
Habits aren't formed overnight. Take tiny steps everyday and before you know it, you will have developed a healthy habit.
Making healthy habits a muscle memory, will help improve your quality of life.


USD/CAD finds support near 1.3300 despite crude oil recovery
by Eren Sengezer- Crude oil prices recover in American session on Monday.
- Wholesale Sales in Canada rose more than expected in September.
- US Dollar Index fluctuates in tight range above 98.
The USD/CAD pair came under modest bearish pressure during the American trading hours and retreated to 1.3300 area before finding support there. As of writing, the pair was trading at 1.3315, adding 0.12% on a daily basis.
Earlier in the day, the data published by Statistics Canada showed Wholesale Sales in Canada increased by 1% following August's decline of 1.2% and surpassed the market expectation of 0.4% to help the loonie stay resilient against the greenback.
Eyes on crude oil ahead of OPEC meeting
Additionally, after staging a technical correction during the first half of the day following last week's rally, crude oil prices gained traction in the last hours with the barrel of West Texas Intermediate turning flat on the day near $58 and making it difficult for the pair to continue to edge lower.
Markets will be paying close attention to any fresh developments surrounding the OPEC+ output cuts ahead of December meeting and the pair is likely to react to heightened volatility in WTI. According to the CME Group's OPEC Watch Tool, markets are pricing a 75% possibility of the group maintaining its output cuts.
On the other hand, the greenback seems to be preserving its strength against its major rivals on Monday with the US Dollar Indexregistering small daily gains near the 98.30 mark. The data published by the Federal Reserve Bank of Dallas showed that the business activity in Texas' manufacturing sector declined at a softer pace than expected to help the index stay in the upper half of its daily range.
Technical levels to watch for
USD/CAD
| Overview | |
|---|---|
| Today last price | 1.3312 |
| Today Daily Change | 0.0020 |
| Today Daily Change % | 0.15 |
| Today daily open | 1.3292 |
| Trends | |
|---|---|
| Daily SMA20 | 1.3203 |
| Daily SMA50 | 1.3216 |
| Daily SMA100 | 1.321 |
| Daily SMA200 | 1.3277 |
| Levels | |
|---|---|
| Previous Daily High | 1.33 |
| Previous Daily Low | 1.3254 |
| Previous Weekly High | 1.3328 |
| Previous Weekly Low | 1.3156 |
| Previous Monthly High | 1.3349 |
| Previous Monthly Low | 1.3042 |
| Daily Fibonacci 38.2% | 1.3283 |
| Daily Fibonacci 61.8% | 1.3272 |
| Daily Pivot Point S1 | 1.3264 |
| Daily Pivot Point S2 | 1.3237 |
| Daily Pivot Point S3 | 1.3219 |
| Daily Pivot Point R1 | 1.331 |
| Daily Pivot Point R2 | 1.3328 |
| Daily Pivot Point R3 | 1.3355 |


{% if worker_name_to_info_items %}
RenderPictures args: {{ render_pictures_args }}
NoPatch render_pictures run with GPU: {{ nopatch_gpu }}
WithPatch render_pictures run with GPU: {{ withpatch_gpu }}
To view all {{ failing_files_count }} failing files click here.
Worker
Total failing files
{% for worker_name, worker_info in worker_name_to_info_items %}


cloud
ABC Bank
search
view_module
refresh
more_vert
First Name
Last Name
Email
Address
Documents
Submit
send
Thank You!
Successfully submitted!


| categories | Google Trends categories. |
| countries | Word countries ISO code. |
| gtrends | Google Trends Query |
| plot.gtrends | Plot Google Trends interest over time |
| setHandleParameters | If 'gtrends' should be used behind a proxy, especially with NTLM authentication mode, you need to set the proxy parameters and credentials using "setHandleParameters" function |


Managing a User's Password
How to change or reset a user's password as well as view details regarding the user's current password settings using the User Accounts module.
- Navigate to Admin > User Accounts - OR - Go to a User Accounts module.
- Find the user to be edited using a filter or by searching.
- Click the Edit button beside the required user account.
- Select the Manage Password tab. The following details regarding the user's password are displayed in the Manage Password section:
- Password Last Changed: Displays the date the password was last changed.
- Password Expires: Displays the date the password will expire, if any.
- Select from the following options:
- To change the password, perform the following in the Change Password section:
- In the New Password text box, enter a new password.
- In the Confirm Password text box, re-enter the new password.
- Click the Change Password link.
- To reset the password, perform the following in the Reset Password section:
- Click the Reset Password link. This generates a random password that is sent to the user's email address.
- Click the Cancel button to return to the module.


Leveraging the ojModule Life Cycle Functions
Understanding the four horsemen of the ojModule templates: handleActivated, handleAttached, handleBindingsApplied, and handleDetached
Build a Standalone App with Electron and Oracle JET
Create cross-platform, native OS desktop apps from Oracle JET codebases
JSFiddle Base for Oracle JET 2.1.0
Updated scaffolding to run JET version 2.1.0 code on code pen sites
The Best JavaOne Session I Didn't See (in person)
Functional Programming and a ton of other sessions on the JavaOne YouTube Channel
Using the ABCS Custom Code Component to Get and Set Data
Hacking around with the ABCS JavaScript API
Swapping in External Data Sources for the JET Cookbook Examples
How to point to your own data files on GitHub Gists when modifying the Oracle JET Cookbook samples
Nav Drawer is the New QuickStart
Dissecting the new Yeoman templates in OracleJET 2.1.0
Parsing a Sales Cloud JWT after passing it into APEX
Decoding the Java Web Token from Sales Cloud so that we can use it in APEX application items
Creating a Popup Message Box for Oracle JET Forms
Popup confirmation messages using off-canvas overlays
Using Grunt to Build a WAR File
Leveraging Oracle JET's Grunt setups to create a WAR file from the release build process output in order to deploy a JET project to WebLogic


Home
I'm playing with a project that involved
setting up a screen recording and hit
on the fact that ffmpeg can do it.
There's two steps. First, you get a list
of available vidoe and audio with this:
ffmpeg -f avfoundation -list_devices true -i ""
The first time I ran that command on my mac
I got a securty dialog and had to go into
System Preference - Security and Privacy -
Screen Recording then unlock it and tic the
box next to my terminal app to let it run.
After a bunch fo random stuff, you'll get
something like:
[AVFoundation indev @ 0x121005470] AVFoundation video devices:
[AVFoundation indev @ 0x121005470] [0] FaceTime HD Camera
[AVFoundation indev @ 0x121005470] [1] Capture screen 0
[AVFoundation indev @ 0x121005470] [2] Capture screen 1
[AVFoundation indev @ 0x121005470] AVFoundation audio devices:
[AVFoundation indev @ 0x121005470] [0] MacBook Pro Microphone
You use the number in the brackes for the
`-i` values in this command with video going
first and audio going second.
ffmpeg -f avfoundation -i "1:0" -y screen.mp4
That will record `Capture screen 0` (which was is
the main screen for me) and `[0] MacBook Pro Microphone`.
(It throws up a bunch of stuff on the screen while
it's recording.)
Hit `CTRL c` to stop the recording.


251 Road Crashes, 156 Deaths Recorded From January To October In Ondo -FRSC
According to Adeleye, the FRSC in the state was training more personnel to ensure sanity was restored on the roads.
by SaharaReporters, New YorkA total of 156 deaths were recorded from the month of January and October 2019 from 251 recorded road crashes in Ondo State.
Commander of the Federal Road Safety Corps in the state, Rotimi Adeleye, made the disclosure in Akure, the state capital, on Wednesday.
He said, "A total of 104 crashes and 65 deaths were recorded in the first quarter, 68 crashes and 47 deaths in the second quarter while 79 accidents and 44 deaths were recorded in the third quarter."
According to Adeleye, the FRSC in the state was training more personnel to ensure sanity was restored on the roads.
He added, “The fourth quarter happens to be the Yuletide period, which obviously on yearly basis, is the period that we believe that we do more of enlightenment.
"We do more of visibility, we do more of enforcement and more of putting all machineries in place in preparation for Christmas and New Year festivities."
He pleaded with vehicle owners to avoid reckless driving, noting that anyone found breaking traffic rules would be made to face the law.


Auroras
Also known as northern and southern (polar) lights or aurorae (singular: aurora), are natural light displays in the sky, usually observed at night, particularly in the polar regions.
They typically occur in the ionosphere. They are also referred to as polar auroras.
This is a misnomer however, because they are commonly visible between 65 to 72 degrees north and south latitudes, which would place it in a ring just within the Arctic and Antarctic circles.
Aurorae occur deeper inside the polar regions, but these are infrequent occurrences, and these are often invisible to the naked eye.
In northern latitudes, the effect is known as the aurora borealis, named after the Roman goddess of dawn, Aurora, and the Greek name for the north wind, Boreas, by Pierre Gassendi in 1621.[1]
The aurora borealis is also called the northern polar lights, as it is only visible in the sky from the Northern Hemisphere, with the chance of visibility increasing with proximity to the North Magnetic Pole.
(Earth's is currently in the arctic islands of northern Canada.)
Auroras seen near the magnetic pole may be high overhead, but from further away, they illuminate the northern horizon as a greenish glow or sometimes a faint red, as if the Sun were rising from an unusual direction.
The Aurora Borealis most often occurs near the equinoxes.
The northern lights have had a number of names throughout history.
The Cree call this phenomenon the "Dance of the Spirits."
In the Middle Ages the auroras have been called a sign from God (see Wilfried Schröder, Das Phänomen des Polarlichts, Darmstadt 1984).
Its southern counterpart, the aurora australis or the southern polar lights, has similar properties, but is only visible from high southern latitudes in Antarctica, South America, or Australasia.
Australis is the Latin word for "of the South."
Auroras can be spotted throughout the world and on other planets.
It is most visible closer to the poles due to the longer periods of darkness and the magnetic field.
Back


Advanced Settings
Advanced settings are accessed by clicking on
the 'Brain button' in the main display.
PHD2 has a large set of parameters that can be
adjusted to optimize your guiding experience. Although these
are
called "advanced" settings, they are not particularly difficult to
understand, and there may be situations when you need to modify them. All
of
the fields on these forms include "tool tips", small message windows
that describe each field in some detail. Simply
"hover" the
cursor over the field to see the tool-tip. In many cases,
this
will provide all the information you need. Because there are so many parameters available, the Advanced Dialog in PHD2
is organized
into notebook tabs that are activated by clicking on the tab names.
All of the tabs share a common set of 'Ok' and 'Cancel' buttons
at the bottom of the form. Clicking on 'Ok' means that changes
made to any of the tab fields will be put into effect. Clicking
on 'Cancel' discards any changes that were made.
Global Tab
Camera Tab
Guiding Tab
Algorithms Tab
Other Devices Tab
Global Tab
The controls on the
'Global' tab are well-described by their respective tool-tips, but they
are summarized here for completeness:
- 'Language' - determines the language
used in the PHD2 user interface, subject to available localization.
Changing this requires a program restart.
- 'Reset Configuration' - restores all settings to their
initial values as if PHD2 had been freshly installed.
- 'Reset Don't Show Again messages' - restores the display of alert messages if you have previously chosen to not show them.
- Software Update
- Automatically check for updates - allow PHD2
to check for software updates when the program starts up. If no
internet connection is available, checking will be deferred until the
next time PHD2 is run.
- Only check for major releases - don't include development builds when checking for software updates.
See the Software Update section for more information about PHD2 software updates.
- 'Log
File Location' - specifies a directory where PHD2 guide logs,
debug logs, and any diagnostic image files will be stored. The default
location on Windows is the "My Documents" folder associated with the
logged-in user..
- Dither Settings
- 'Random
mode' - tells PHD2 to use a random-number generator to compute both the
size and the direction of the dither, subject to any constraints
imposed by RA-only mode or by the Dec guiding mode being set to 'Off'.
- 'Spiral mode' - tells PHD2 to dither with fixed-size amounts in a clockwise spiral pattern.
This can be a good choice when the imaging camera has
significant fixed-pattern noise or the mount has a troublesome amount
of Dec backlash.
- 'Dither
RA only' - tells PHD2 to dither only on the RA axis.
- 'Dither scale' - an optional multiplier used to adjust the maximum-dither amount specified by the image application. See Dithering Operations
- 'Enable
diagnostic image logging' - used primarily for product support and
diagnosis of problems dealing with the guide camera or PHD2
star-recognition and
measurement. Guide frame images
are captured and logged in a FITs format subject to the filter/trigger
controls in the group-box. Images are saved in sub-folders of the
PHD2 logging directory with the date and time encoded as part of the
sub-folder name. For example, a folder named
'PHD2_CameraFrames_2022-03-03-184542' refers to a logging event that
began on March 3, 2022 at 18:45:42 local time. Individual guide frames
are saved with filenames
that indicate the time the image was captured and the reason the frame
was saved. Since the guide frames are saved in a FITs format, the
header will include other useful information such as exposure time.
Because the logging function is primarily used for
trouble-shooting, the image sub-folders are automatically removed after
30 days. If you wish to keep the images for your own purposes,
you should either rename the sub-folders or copy/move them to a
different directory. When logging is triggered by one of the
"events" - e.g. lost star or large errors - a group of images
(an image set) will be saved, centered in time on the image that
triggered the event. This provides a record of guider
images that will show what the guide star and guide frame looked like
both before and after the unusual condition occurred. The various
triggering and filtering controls are described below and are also shown in the tooltips for the controls:
- 'All
lost star frames' - logs the image set for any lost-star events,
regardless of the reason for the lost star (low SNR, mass-change, etc.)
- 'All
auto-select star frames' - logs the image set for any frames used for
auto-selection of the star, regardless of outcome. Note that any
failed attempts to auto-select a star will always result in a logged
image, regardless of choices made in the user interface.
- 'When
relative error exceeds' - logs the image set when the star deflection
on the current frame exceeds the running-average error by the
factor chosen in the adjacent spin control. For example, if the
average (RMS) error is 0.5 pixels and the current frame's error is 1.5
pixels, the relative error is 3.
- 'When
absolute error exceeds' - logs the image set when the star
deflection exceeds the number of pixels specified in the adjacent spin
control.
- 'Until
this count is reached' - logs images until the count matches the
value of the adjacent spin control. The counter is reset to zero
when the limit is reached.
Since
the images
are saved in an industry-standard format, there are many
astronomy-related applications that can display or analyze them, many
of which are free. Most of the image-capture and image-processing
applications can do that along with other, more specific tools that can
perform detailed measurements on the stars and the optical quality of
the field of view. You can just do a web search to find a list of
applications that support the FITs format for whatever platform you're
using. If you simply want to look at the images to check focus or
see the general quality of the images being returned from your camera,
you can use PHD2 for that. With PHD2 in an idle state -
neither looping nor guiding - just drag-and-drop one of your saved FITs
image onto the main window. The display will then update to show the
image you just dropped. There's
no need for PHD2 to be connected to any of the hardware. You can
adjust the gamma slider, select a star (manually or automatically), and
use the Star Profile tool to view the HFD and profile of the selected
star.
Camera Tab
The controls on the 'Camera' tab are used as follows:
- 'Noise
reduction' - specifies the algorithm to use for handling noisy guide
camera images - those for which dark frames are not sufficient.
Choices include None, 2x2 mean, and 3x3 median. Both 2x2 mean
and 3x3
median will reduce the noise considerably. 3x3 median is especially
effective at removing hot pixels and neither will significantly affect
guiding accuracy. However, creating a bad-pixel map is
likely to be a better solution with less impact on your ability to
detect faint stars.
- 'Time lapse' - imposes a fixed delay between
guide exposures. This can be useful if the guide exposures
are
very short and you don't want to overload either the mount or the
camera
link with very high traffic rates.
- Variable
Exposure Delay - very precise/encoder-equipped mounts often
benefit from conservative auto-guiding. This can include use of
medium-long exposure times (4+ seconds) and an additional delay between
guide camera exposures. The goal is to create a slow guiding
"cadence" that is only reacting to tracking changes that aren't already
being handled by the mount encoders or by its pointing model.
Details of the approach can be found here: Variable Delay Guiding
The variable exposure delay controls provide a way to achieve
these goals while avoiding unnecessary delays when the system is engaged in
actions other than "steady-state" guiding for imaging/science
operations.
- 'Use Variable Exposure Delays - enables the feature
- Short
delay (sec) - sets the exposure delay when PHD2 is looping,
star-selecting, calibrating, dithering and settling, or running the
Guiding Assistant. For some mounts, this value should be non-zero
to give the mount encoders enough time to complete their position
adjustments.
- Long delay (sec) - sets the exposure delay when
PHD2 is guiding and not in any of the other states named above.
This delay actually defines the time between the completion of
the last guide command, if any, and the start of the next camera
exposure.
- For both the long and short delay scenarios, the interval
between successive guide camera exposures (and guide commands) will be
exposure_time + guide_pulse_times + delay_value.
- 'Auto Exposure' - these are the settings that control Auto exposure time:, useful for automated imaging or AO guiding:
- Min
Exposure - the minimum exposure time. PHD2 will not set the
exposure
time
less than this value, even if the guide star SNR is higher than the
target SNR value.
If the minimum exposure time is set too low, you are likely to chase
seeing
effects and thereby get poor guiding results. Users of adaptive optics
units might set this to a lower value since rapid small
corrections are more manageable with an AO. Lower values, down to
0.5-sec, can also be tried if multiple guide stars are normally
available in the field of view.
- Max
Exposure - the maximum exposure time. Before a guide star is selected,
PHD2
will set the exposure time to the maximum value. After selection is completed, PHD2
will then incrementally decrease the exposure time until the desired
SNR is reached. The setting should be sufficiently small to allow
PHD2 to adequately handle the tracking errors in your mount.
- Target SNR - this is the average SNR value that PHD2 will attempt
to achieve
by adjusting the exposure time. SNR often fluctuates from frame to frame
even with a
fixed exposure duration, so be sure to account for that when choosing a
target SNR
value. PHD2 will always reject frames when SNR drops below 3.0. The default
value of 6.0 may provide enough of a cushion to prevent fluctuations from causing
the SNR to
go below 3.0 - but double-digit values are recommended. As mentioned in the 'Basic Use' section, SNR is
similar but not identical to the signal-to-noise ratio used in
photometry.
- 'Star
Saturation Detection'
- when identifying candidate guide stars, PHD2 tries to avoid
saturated stars in order to get the most accurate calculations of their
positions. You can assist this process by specifying how the
assessment of saturation should be done:
- Saturation
by ADU value - this is the default option because it relies on the
brightness levels measured by the guide camera sensor. Most
guide camera drivers return image data in either 8-bit or 16-bit
formats even if the camera electronics natively work in 12-bit or
14-bit modes. An 8-bit camera will saturate at a brightness level
of 255 while a 16-bit camera will saturate at levels above 65000.
If you are uncertain about your camera's behavior, you can use
the Star Profile tool to measure the brightest pixel level when taking
exposures of a very bright star. This will quickly tell you if the
camera is returning values in the range of 0-255 or 0-65K and you can
set the saturation value accordingly.
- Saturation via star-profile -
this relies on a less accurate judgment of saturation based on whether
the star profile has a flat top. It is not recommended for normal
applications.
- 'Pixel
size' - The guide camera pixel size in microns. This is needed by PHD2
to compute the
guider image scale and thus report guider statistics in units of
arc-seconds. Refer to your camera documentation to determine
the
correct value for pixel size. If your camera has non-square
pixels, just choose one of the dimensions or input the average of the
two. The pixel size has no effect on guiding accuracy, so a small
amount of imprecision in this parameter won't cause any
problems. If you're using the binning setting in this dialog to
control camera binning, the pixel size should be the native, un-binned
size. Note:
this control may be disabled if the camera and camera driver can report
the pixel size to PHD2 (most can). In that case, the value displayed in the
disabled control represents the device-reported pixel size - it is what
it is. If you're also specifying a binning factor at the camera
driver level rather than in PHD2, the reported pixel size may change as
a result. It is generally better to use PHD2 to set binning (see
below).
- 'Camera
gain' - Sets the gain level for the cameras
that support this feature. Reducing this parameter can help to
reduce the noise level or may allow use of a bright star without
saturation. The range of values and their specific effects are
dependent on the individual camera, so this PHD2 parameter is treated
as a percentage of the range between the minimum and maximum gain
values supported by the camera. For example, if the camera uses
absolute
gain values in the range of 40 to 80, a PHD2 gain value of 50% would
translate to a camera gain of 60. Adjusting the gain level is not
usually required once the configuration has been stabilized, and doing
so will require replacement of dark libraries and bad-pixel maps.
- 'Disconnect
nonresponsive camera after (seconds) - Camera malfunctions will
sometimes occur, often because of faulty USB connections. In many
cases, the camera will not return the requested image data, and PHD2
will appear to "hang." This parameter determines
how long PHD2 should wait for a response after the expected exposure
time has expired. For example, a timeout value of 5 seconds in
conjunction with an exposure time of 2 seconds will tell PHD2 to wait
up to 7 seconds for a response. If the data are not received
within that period, PHD2 will attempt to halt the operation, disconnect
the camera, display an alert message in the main window, then try to reconnect the camera.
Since a hardware/power problem is nearly always the underlying issue, this
recovery attempt won't always succeed. You should be
generous with these timeout values to avoid spurious recovery
actions. Also, if you are using a guide camera that shares
electronics with the main imaging camera, you should set this timeout
to a large
value, well above the maximum expected time for a full-frame download
from the main imager. This is a consideration for users of some of the SBIG dual-chip cameras.
Regardless of whether PHD2 is able to handle the situation
gracefully, the underlying problem is almost certainly in the
hardware or the camera driver and will need to be resolved before
guiding is continued.
- Binning
- for those cameras that support on-chip (hardware) binning, you can
specify the binning that will be used while taking guide exposures.
Detailed information is available here: Use of Binning. This control will
appear only if the camera is capable of on-chip binning and only if the
camera is connected to PHD2. You should always use a separate PHD2
profile for each different binning setting because it affects many
downstream guiding parameters, too many to try to adjust manually.
- 'Use subframes' - For cameras that support this
feature, PHD2
will download only a subframe of each guide
exposure. The subframe shows the region around the star bounded by
the tracking region limits. This is useful for cameras with slow download
times, allowing them to be used more effectively for guiding.
This feature applies to both calibration and guiding.
During initial looping without a selected star, the full
frame is downloaded, but once a star is selected, only this small
subframe is downloaded. If you are using subframes but want to
see the full frame to select a different star, just shift-click
anywhere in the image display window or shift-click on the 'Auto-select
star' button. Using subframes eliminates the option for
multi-star guiding, only a single star can be used with the subframe
option.
- Cooler
controls - a few guide cameras support sensor cooling.
Note
that some of the controls in this list will be disabled if the camera
isn't connected to PHD2 or if the camera driver doesn't support the
feature.
Guiding Tab
The
guiding tab shows the parameters used for calibration,
star-tracking, and guiding behavior shared by all of the guide algorithms..
Guide Star Tracking
- 'Search
region' - specifies the size of the "tracking rectangle", in units of
pixels. You may need to increase this value if your mount
does
not perform well or, more commonly, if it's not well-aligned on the
celestial
pole. You may also want to increase it temporarily while using
the Guiding Assistant so that backlash measurement can be done without
losing the guide star. Just remember that an overly large search
region also increases the likelihood that multiple stars will live
within its boundaries, which could lead to guiding problems. The
value is actually a "radius" amount, so a search region of 15 pixels
translates to a square of 30x30 pixels.
- 'Star mass detection' - tells PHD2
to monitor the
brightness and size of the guide star compared to the sky background.
This feature has been deprecated and can generally be left un-checked (default value) for most configurations.
- 'Star mass tolerance' - if the 'Enable' box
is checked, PHD2 will trigger a 'lost star' error if the measured
brightness and size vary by more than this percentage. This
might be useful if you have two stars inside the tracking rectangle and
you want to be sure PHD2
doesn't mistakenly switch stars.
It can also
prevent errors caused by thin clouds, high camera noise, or alpha
particle artifacts;
but it may be unreliable if you are guiding on a faint star. If
you are getting too many 'lost star - mass change'' errors when the star is plainly
visible on the display, try increasing the value of this setting or disable it entirely.
.
- 'Minimum
star HFD' - specifies the minimum half-flux-diameter (roughly the
'size') of a suitable guide star. This is
probably the best way to prevent PHD2 from
mis-identifying clumps of hot pixels as usable guide stars. You
can
determine a suitable value for your system by manually selecting
some small stars that you know are not just hot pixels, then use
the star-profile tool to see the HFD values of those stars.
You'll want to specify a minimum HFD value that allows selection
of legitimate faint stars but not hot pixels. The default value
of 1.5px should work for most configurations but you can adjust it if
needed - for example, if the guide camera pixels are large and too many
candidate guide stars are being rejected because of their apparent
small sizes.
- 'Minimum
star SNR for AutoFind': specifies the minimum SNR value that will be
accepted by the auto-select function for non-saturated stars.
This should only be adjusted by experts because a value that is
too large can result in no stars being selected. It can be used
in situations where you would rather use a saturated star instead
of a faint star that you know from experience will prove to be
unusable. However, many of these situations can be avoided by
getting better guide camera focus, refreshing the dark library, or
slightly increasing the exposure times.
- 'Use multiple stars' - determines whether PHD2 will use more than one star for guiding. See Multi-star Guiding for details.
- 'Auto-selection frame downsample' - can
be used in unusual situations where PHD2 guide star auto-selection is
not recognizing misshapen stars. If this happens, you can try
values greater than 1 to improve the chances of recognizing such stars.
For most users, this property should be left at its default value
of 'Auto'.
- 'Beep on lost star' - specifies whether PHD2 will produce an audible 'beep' sound when the guide star is lost during guiding.
Calibration
- 'Focal length' - the focal length of the guide scope (millimeters). This provides one of
two parameters needed by PHD2
to compute the image scale and thus
report guiding performance in units of arc-seconds. If the focal length value is wrong, some
of the default guiding parameters will not be set correctly, and we
won't be able to help
you assess performance and resolve problems. You should use the
new-profile-wizard to specify focal length as part of defining your
equiipment configuration.
- 'Calibration
step-size' - specifies the duration of the guide pulse that
PHD2
will use during calibration. Its use is described in the
'Auto
Calibration' section of the 'Basic Use' help page. You can
adjust
the value depending on whether the guide star is moving too
quickly
or too slowly during calibration. As a general guideline, it
is best to calibrate within about 20 degrees of the celestial equator
(declination = 0), well above the east and west horizons; and to use a calibration step size that will result
in 8-14 steps in each direction. The 'Advanced...' button
to
the right of this control will launch a calculator dialog that can help
you
compute an appropriate value (see figure below) . As with other
parameters, this value is computed for you as part of running the
new-profile-wizard so there is usually no need to adjust it.
- 'Auto restore calibration' - tells
PHD2 to automatically reload
the most recent calibration data as soon
as the equipment is connected. If
you're using an ASCOM (or Indi) mount connection or have an 'aux-mount'
connection, you probably want to set this option.
Conversely, if PHD2 has no scope pointing
information available, this option should be reset.
The new-profile wizard will ask you how you want to set this
option.
Note that auto-restore is remembered for each separate equipment
profile, and it only has an effect when you load the profile and
connect to the equipment. If you want to force a recalibration
before an individual guiding session begins, there are multiple ways to do that - doing a Shift-Click on
the PHD2/guiding 'Guide' button is the easiest. If you have set the auto-restore
option, you must be sure that the guide camera is not rotated with
respect to the guide scope or the sky.
- 'Assume
Dec orthogonal to RA' - Normally, the calibration process independently
computes the camera angles for both right ascension and declination.
There is no need for great precision on these values, and the
default behavior normally works well. However, if your mount has
very high periodic error, very large Dec backlash, or you are dealing with very bad seeing
conditions, you may want to force the RA and Declination angles to be
perpendicular. If you choose that option, PHD2 will compute the
camera angle for RA, then assert a declination angle that is orthogonal
to it.
- 'Clear mount calibration'
- tells PHD2
you want to clear the calibration data currently being used for the mount and
re-calibrate
before
guiding is restarted. You might do this for a variety of
reasons
- rotating the guide camera or seeing that guiding results are substantially worse than normal, for example.
You can accomplish the same result by doing a Shift-Click on
the PHD2 guiding icon on the main page, which will force a re-calibration.
- 'Use
Declination Compensation' - if PHD2 can get pointing information from
the mount via an ASCOM/Indi connection ('Mount' or 'Aux'), it will
automatically adjust the RA guide rate based on the current
declination.
This box should be left checked except in very unusual
cases where the mount controller is making the adjustment. Don't confuse this option with 'Declination backlash
compensation', which is an entirely different feature.
Shared Guiding Parameters- 'Fast
re-center after calibration or dither' - during calibration or
dithering, the mount may be moved a significant distance from the
initial "lock" position. If you click this checkbox, PHD2 will
move the mount back to the lock position as quickly as possible,
using the largest guide commands permitted by the 'Max Duration'
settings of
your guide algorithms and by the size of your tracking region.
This is only a way to speed up the calibration process, the
use
of this checkbox is completely optional. If you find that
calibration often fails because the star is lost during the fast
re-center,
you should disable this option. That sort of problem may
indicate that you have a large polar alignment error or excessive
periodic
error in RA. You can run the Guiding Assistant to help see what's
causing the problem.
- 'Reverse Dec output after meridian flip' -
tells PHD2 how to adjust the
calibration data after a meridian flip. Some
newer mounts track their 'side of pier' state and automatically reverse the
direction of the declination motor after a meridian flip. Older mounts do not do this. In either case, PHD2
needs to know if the mount will automatically change its behavior based on
side-of-pier. You may have difficulty finding information about
how your mount behaves in this respect, so PHD2 provides the Meridian flip calibration tool to determine the correct setting automatically.
It's also easy to figure out the setting manually with this quick experiment:
- With the checkbox disabled, calibrate on one side of the pier, then move the mount to the other
side.
- If you are guiding via ASCOM or Indi or are using an 'aux mount' connection, just start guiding.
- If
you're guiding only via ST-4 and PHD2 has no scope pointing
information, first select 'Flip Calibration' under the 'Tools' menu,
and then start guiding.
- In either case, if the guiding works normally, leave the box un-checked; but
- if you see guiding run-away in
declination, check the box and repeat the entire procedure, including calibration. You must repeat the procedure, simply checking the box doesn't "fix" anything.
Note:
this procedure must be following in its entirety until you
determine the correct setting. Changing the 'Reverse Dec' setting
only determines what will happen in the future, at the next calibration.
- 'Enable mount guide output'
- this is normally checked because it tells PHD2
to send guide
commands to the mount. There are some
circumstances
where you might want to disable this, usually because you want to
observe the uncorrected behavior of the mount. In most cases, you will be better
off running the Guiding Assistant for these purposes, which
automatically handles this setting for you.
- 'Stop
guiding when mount slews' - prevents PHD2 from trying to continue
guiding when the mount is being slewed, often by an imaging automation
app. It should normally be left checked. Note: this option
is only displayed if you have an ASCOM or INDI mount connection.
Advanced Calibration Calculator
To review or change calibration parameters,
be sure the topmost four edit controls are
correctly filled in. If you have already specified the focal
length and
the camera pixel size via the new-profile-wizard,
those fields will already be populated in this form. If you are
using an ASCOM connection to your mount, the fields for "Guide speed"
and "Calibration declination" will usually show the correct values unless the driver doesn't report them correctly.
Otherwise, you'll need to supply them yourself. The guide
speed is specified as a multiple of sidereal speed - most mounts will
use something
like
1X or 0.5X sidereal, but you can choose something else. Note:
changing the guide speed setting here never changes the guide speed
setting in the mount - that can only be done via the mount driver or
the hand-controller. If this field is already filled in,
changing it will have no effect.
You
can
leave the 'calibration steps' field at the default value of 12, which
is likely to result in a good calibration. Use of a significantly
smaller value raises the likelihood that seeing errors or small mount
errors will cause calibration errors . You should be careful
about increasing this value above 12 because
"bigger" is not always "better". With larger
values, uncorrected periodic error in RA or large drift in
Dec will degrade the accuracy of the calibration. As you
change the values
in these fields, PHD2
will recalculate the value for
the
calibration step-size. If you then click on 'Ok', that value
will
be inserted into the calibration step-size field of the 'Guiding'
dialog and will be used for the next calibration.
Clicking 'Ok' will also populate the focal length and camera
pixel size fields in the 'Guiding' and 'Camera' tabs, so any changes
you
made in the calculator will be reflected there as well. Don't do
this if you are just using the calculator to experiment or check
settings for someone else's system. Clicking on the 'Cancel' button
will close the calculator without changing any of the values in the
curren profile. Again, PHD2 never changes the guide speed setting
in
your mount regardless of what may be entered in the 'Guide Speed' field.
If you've used the
new-profile-wizard to build your equipment profile, there's rarely any
reason to use the 'Advanced" button and the Calibration Calculator
dialog.Algorithms Tab
The algorithms tab can be used to select the guiding algorithms you
want and fine-tune the parameters associated with them. The parameters displayed will change significantly if
you
change the algorithm selections. For that reason, all the
parameters related to guide algorithms will be treated together, in a
separate section.
The remaining controls, the ones that are independent of the guiding
algorithm selections, are described below.
- 'Max RA duration' - specifies the
maximum allowed
guide pulse duration for right ascension. You might reduce
this
below the default value if you want to avoid chasing a large
deflection that could be caused by a spurious event (e.g. wind gust,
hot pixel, etc.) .' However, there is rarely any reason for
changing it if you have protected yourself against hot pixels (Minimum
star HFD).
- 'Enable' PHD2 Backlash Compensation - this
controls whether PHD2 will apply a compensation factor when the
direction of declination guiding needs to be reversed.
See section below.
- 'Max Dec. duration' - specifies the
maximum allowed guide pulse duration for declination (same as above but
for declination).
- 'Declination
guide mode' - gives you additional control over declination
guiding. Declination guiding is not like RA guiding because the
tracking errors are not caused
by imperfections in your mount's drive system - the Dec motor is idle
during normal sidereal tracking, running only in response to short Dec guide commands. Instead, tracking errors in
declination are caused by polar
alignment error, mechanical flexure, wind, binding or dragging of cables, or
unwanted movement of the guiding assembly.
Absent these mechanical problems, declination
tracking should be smooth and mostly uni-directional assuming
there is no over-shoot from an
earlier correction. The default value of 'auto' tells PHD2
that
some reversals in direction are acceptable, subject to the behavior of
the various guiding algorithms. However, if your mount has severe
declination backlash, you may want to prevent direction reversal
altogether. You could then select either 'north' or 'south'
to
restrict corrections to only that direction (uni-directional Dec
guiding). Keep in mind,
however, that an over-shoot in correction with one of these modes
might leave the star positioned off-target for an extended period of
time. So you'll probably want to use conservative
aggressiveness values for either 'North' or 'South' modes and you may
want to intentionally degrade the polar alignment to help keep the
drift rate larger than the deflections caused by seeing.

- 'Reset'
- resets the guiding parameters for the selected RA or Dec algorithm to
their default values. Min-move settings will be set using the
same algorithm employed in the new-profile-wizard. If you
previously used the Guiding Assistant to adjust the min-move settings,
you should repeat that procedure.
Declination Backlash Compensation
Most
commonly-used mounts have some backlash in declination.
You can find a brief discussion of backlash mechanics here: Dec Backlash
Backlash causes a delay whenever there is a change in direction
of
the Dec guide commands. During this interval, the declination
gears aren't fully engaged and the axis doesn't move in response to the
guide commands. Many mounts have settings for backlash
compensation but these should not be used for guiding - they are
typically intended for visual use only.
Because the actual amount of compensation needed at any given
time depends on the pointing position and the mechanical load on the
system, a fixed value will usually result in oscillations that never
stabilize. Reasons for the positional dependency include
uneven gear wear or significant imbalance of the scope in
declination. The backlash compensation implemented by PHD2 is
adaptive, meaning that the compensation amount is adjusted up or down
depending on the measured results. Before enabling this feature,
you should run the Guiding Assistant and measure the declination
backlash - the time delay required to fully reverse direction in
declination. Keep in mind, the higher the guide speed setting in
the mount (e.g. 0.9x sidereal), the smaller this delay will be.
If the measured amount is 3 seconds or less, the Guiding
Assistant will recommend trying backlash compensation. If you
apply that recommendation, the backlash compensation settings will be
handled for you automatically. The UI controls for backlash
compensation include settings for 'minimum' and 'maximum' compensation
amounts. These effectively limit the range of the adjustments
that are made to the starting compensation value. If you're
experienced with your mount's behavior, you can adjust these settings
manually to be sure the compensation stays within a range that you
know works well. Otherwise, you should just leave these at their
default values. The backlash compensation algorithm will
generally work well if the backlash is less than a few seconds and the
mount doesn't have other significant mechanical problems. You
should expect a short period of instability when guiding starts
because the initial state of the Dec gear system is unknown - just let
it stabilize before you actually start imaging. If you see
recurring periods of Dec oscillation or the axis won't settle down,
disable the compensation feature and submit your debug log file to the
PHD2 support forum. Other Devices Tab
If
you are using either an adaptive optics or rotator device, the "Other
Devices" tab will be shown. A general discussion of using an AO for guiding can be found here: AO Guiding The upper section deals with the AO
device if one is being used. You
can use these parameters to control the
calibration process and the manner in which 'bump' operations are done.
The 'calibration step' field tells PHD2 the amount to move the
tip/tilt element in each of the up/down/left/right directions, in
units of AO steps, during calibration. The guide star position is measured at the
beginning and end of each leg of the calibration, and the 'samples to
average' parameter tells PHD2
how many samples to take at each of these
points. Averaging images is important because the seeing will
always cause the guide star to "bounce around" a bit. As
discussed elsewhere, the AO unit can make corrections
only within a limited range of guide star movement. You
will want to initiate mount 'bump' corrections before these limits
are actually reached, and the 'bump percentage' field is used for that
purpose. To move the mount, the full bump correction is
accomplished in steps - the 'bump step' field controls the size of
these increments. If the bump operation has begun and the guide
star remains outside the "bump percentage" area, PHD2
will increase the
bump size until the guide star is back within that range.
Additional movement from that point to the center position
will
continue at the specified "bump step size". This complexity is
required in order to maintain good guiding, with no elongated stars,
even as the mount is being bumped. During the bump operation, the
AO is continuing to make corrections, so the long "mount bump" is
continuously offset by adjustments in the AO. The 'AO
Travel' field specifies the number of steps the AO can make on each
axis. The default value works well for most SX AO devices but in
some cases it may be too large. If you encounter problems during
AO calibration where the AO hits its limits, you can adjust the 'AO
Travel' amount downward.
The
'Bump on dither' option tells PHD2 to bump the mount when a dither
command is received and thus move the guide star back closer to the
center position of the AO. The
option to enable or disable AO guide commands operates independently
from the 'Enable mount guide output' checkbox in the Guiding tab.
So
you can
independently enable/disable either the guide commands to the tip/tilt
device or the
'bump' guide commands to the mount. The same principle holds for
the 'Clear AO calibration' option - that will force a recalibration of
the AO without affecting calibration of the mount. The 'Mount
Backlash Compensation' controls let you apply PHD2 Dec backlash
compensation when mount bumps are done. This can help speed up
large dither operations, but it's only appropriate if the mount has a
limited amount of Dec backlash. You should use the Guiding Assistant to
measure your Dec backlash and see what it recommends with regard to
using Dec backlash compensation. The backlash compensation value
cannot be adjusted automatically when the AO is being used so it is a
good idea to specify a value that is perhaps 1/2 the value suggested by
the Guiding Assistant.
When an AO is in use, the 'Algorithms' tab will only show choices for controlling the tip/tilt optical element in the AO
device
itself.
Since
the
AO is not trying to move a heavy piece of equipment, you can
afford to be more aggressive in your guide algorithm choices.
The default algorithms for an AO are 'Hysteresis'', which provides an easy way to control damping and
aggressiveness. If
you use a different algorithm, you should
probably start with a high level of aggressiveness there as well.
The other, shared guiding parameters normally displayed on the
'Algorithms' tab will not be shown for the AO because they aren't used
to control the device.
The rotator device has only
one parameter which lets you match the behavior of the device to the
ASCOM notion of positive and negative angles. The "Reversed"
checkbox can be used for
optical systems that reverse the image, usually because they have an odd number
of mirrors. The direction and amount of rotation is used to
adjust the calibration data, so PHD2 follows the ASCOM standard:
"the rotator position is expressed as an angle from 0 up to but
not including 360 degrees, counter-clockwise against the sky."
Experimentation is likely to be the quickest way to determine if
the box should be checked.


Belt/Deck penetration - Belt/Deck Impact Angle - Impact Velocity - Flight Time
Includes all shell types (AP, HE, SAP(CS)) - only for <IP_ADDRESS> and later
Maximum angle for penetration - Minimum angle for fusing - Lateral ricochet angles
Shell detonation distance after penetration - Checking whether the armor is thick enough to arm the shell
Overpen calculations are experimental - further testing may be needed to confirm results.
Site will be updated if and when more accurate information becomes available.
| Predefined Shells | Shell Data | Target Data |
|---|---|---|
Target ArmorHorizontal Impact Angles |
| Graphs | Calculation Method | Calculation Parameters |
|---|---|---|
|
|
|
If you find a bug or want a new feature, please open an issue at GitHub. Your suggestions will be considered at later development.


I like to make things and participate in mutual aid.
This site is where I post things. It consists of handwritten HTML and CSS.


Want to write cleaner, more organized JavaScript? Learn about commonly used design patterns in JavaScript and see practical examples of JS design patterns in use.
Developers often encounter coding problems in JavaScript that can be solved by using well-established design patterns. Because JavaScript is not a traditional Object Oriented programming language, design patterns are harder to discern, but not impossible to accomplish.
Design patterns are not code snippets that can be used directly in your code (like a data structure). Rather, they’re a recipe for how to solve a problem in software engineering. Design patterns are structured best practices that the programmer can use to solve common problems when developing (or designing) an application or system.
It is important for developers to be able to recognize and apply these patterns correctly to avoid reinventing the wheel. I will detail some commonly used design patterns in JavaScript to show it is possible to use design patterns in the JavaScript world.
This is a design pattern used specifically to clone attributes of an object into new objects, hence the word prototype. JavaScript does this by creating new objects, so setting up your own prototype is an important design pattern to know, especially in JavaScript.
Example:
function Hello (greeting) {
this.greeting = greeting || 'Hello World!';
}
Hello.prototype.speak = function(somethingElse) {
var message = somethingElse || this.greeting;
console.log(message);
}
var hi = new Hello('Just saying hi!');
hi.speak();
hi.speak('Something different');
var hello = new Hello();
hello.speak();
hello.speak('Yep');
See the example on gist.github.com
Why use a prototype? In JavaScript, if you want a class, this is how it gets done. ES6 has introduced classes, but it’s important to know this is syntactic sugar over the existing prototype pattern.
The module pattern is probably the most commonly used pattern after prototype. Modules should be Immediately-Invoked-Function-Expressions (IIFE). All of the module code exists within a closure. Import variables by passing in values through the function execution. Export variables (expose variables) by returning an object.
Why use a module? A module should be used in any system beyond a single function JavaScript. It’s helpful not to pollute the global namespace and keep your functions importable and exportable.
Example:
var options = {
username: 'blah',
server: '<IP_ADDRESS>'
};
var ConfigObject = (function(params) {
var username = params.username || '',
server = params.server || '',
password = params.password || '';
function _checkPassword() {
if (this.password === '') {
console.log('no password!');
return false;
}
return true;
}
function _checkUsername() {
if (this.username === '') {
console.log('no username!');
return false;
}
return true;
}
function login() {
if (_checkPassword() && _checkUsername()) {
}
}
return {
login: login
}
})(options);
See the example on gist.github.com
The creation of the singleton object, should be self-invoked, meaning it will execute and store the instance at the time of definition.
When to use a singleton? The singleton pattern is used when you only ever want exactly ONE instance of an object. The singleton interface will return that instance any time it’s requested.
Example:
var GlobalConfigurationObject = (function() {
var instance;
function createInstance() {
return new ConfigObject();
};
var getInstance = function() {
if (!instance) {
instance = createInstance();
}
return instance;
}
return {
getInstance: getInstance
}
})();
See example on gist.github.com
If you are writing JavaScript to do anything fancy, you are probably already using the observer pattern. When you create an event handler, such that functions are executed when the event has been fired, that’s the observer pattern.
When to use it? This helps prevent tightly coupled code.
Example: http://www.dofactory.com/javascript/observer-design-pattern
The adapter pattern is an abstraction or intermediate from one interface to another. Typically this is adapting the API response object, raw API data (JSON, XML, etc.) into usable JavaScript objects.
When to use it? In JavaScript it’s helpful to have a clear data model in place before writing an adapter.
Example: http://www.dofactory.com/javascript/adapter-design-pattern
Developers can apply design pattern thinking to write cleaner, more organized JavaScript. The growing use and popularity of frameworks that use design patterns—Ember, React, KnockoutJS—make it a necessity be able to identify and utilize software design patterns more than ever. I encourage developers to use as many design patterns in JavaScript as possible. This comprehensive list of exceptionally well thought out design patterns examples in JavaScript is a great resource to continue the path of discovery.


An internal data storage error has occurred accessing:
Request URL
Note: You would never generate a page that displays a Java exception to an end-user in a real application
Cause unknown (no exception details available)
Notice that there is very little information here (above the line). Firstly, end-users should not be shown internal exception details, but secondly, no exception details are available anyway.
Compare this to the code in
ExceptionHandlingController.handleError()
or
GlobalControllerExceptionHandler.handleError()
which explicitly create a Model and put extra details into it (these
are the methods used when a
SupportInfoException
is thrown).
Alternatively you could extend
ExceptionHandlerExceptionResolver
and override
doResolveHandlerMethodException(HttpServletRequest req, HttpServletResponse resp, HandlerMethod handlerMethod, Exception exception)
to add exception and other attributes to the model. Also set the
inherited
order
data-member to a value less than
MAX_INT
so it runs before the default
ExceptionHandlerExceptionResolver
instance (it is easier to create your own handler than try to modify
the one created by Spring).


To view this video please enable JavaScript, and consider upgrading to a web browser that supports HTML5 video


| Class | Weatherman::Response |
| In: |
lib/yahoo_weatherman/response.rb
|
| Parent: | Object |
This is where we get access to the contents parsed by Nokogiri in a object-oriented way. We also use this class to do the i18n stuff.
| LANGUAGES | = | {} |
| document_root | [RW] | |
| language | [RW] |
Astronomy:
astronomy = response.astronomy astronomy['sunrise'] => "6:01 am" astronomy['sunset'] => "7:20 pm"
Returns a hash containing the actual weather condition details:
condition = response.condition condition['text'] => "Tornado" condition['code'] => 0 condition['temp'] => 21 condition['date'] => #<Date: -1/2,0,2299161>
Forecasts for the next 2 days.
forecast = response.forecasts.first forecast['low'] => 20 forecast['high'] => 31 forecast['text'] => "Tornado" forecast['code'] => 0 forecast['day'] => "Sat"
A hash like object providing image info:
image = reponse.image image['width'] => 142 image['height'] => 18 image['title'] => "Yahoo! Weather" image['link'] => "http://weather.yahoo.com"
Location:
location = response.location location['country'] => "Brazil" location['region'] => "MG" location['city'] => Belo Horizonte
Description parsed by Nokogiri. This is better then description if you have to walk through its nodes.
Units:
units = response.units units['temperature'] => "C" units['distance'] => "km" units['pressure'] => "mb" units['speed'] => "km/h"