|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object PreferenceActivity com.blogspot.applications4android.comicreader.ActivitySettingsPage
public class ActivitySettingsPage
Main class for comic-reader settings
| Field Summary | |
|---|---|
static java.lang.String |
LAST_SYNC_PREF
key storing the last time synced |
static java.lang.String |
LAST_SYNC_STRING_PREF
key storing the last time synced as a string |
static long |
ONE_DAY
milliseconds in a day |
| Constructor Summary | |
|---|---|
ActivitySettingsPage()
|
| Method Summary | |
|---|---|
static boolean |
checkForLastSynced(Context ctx)
Checks when was the last time sync was performed |
static void |
launchRepeatedCaching(Context ctx,
boolean force)
Start/setup the caching service |
protected void |
onCreate(Bundle savedInstanceState)
|
protected void |
onPause()
|
static void |
setupDefaults(Activity act)
Sets up the default values for background caching |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final long ONE_DAY
public static final java.lang.String LAST_SYNC_PREF
public static final java.lang.String LAST_SYNC_STRING_PREF
| Constructor Detail |
|---|
public ActivitySettingsPage()
| Method Detail |
|---|
protected void onCreate(Bundle savedInstanceState)
protected void onPause()
public static void setupDefaults(Activity act)
act
- activity calling this functionpublic static void launchRepeatedCaching(Context ctx, boolean force)
ctx
- context usedforce
- forcefully setup the alarm even if background caching is currently disabled
This will NOT cache the strips, but'll only setup the alarmpublic static boolean checkForLastSynced(Context ctx)
ctx
- context
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |


User defined types for networks and populations
This example shows how the standard component type structures can be used to declare components for simple networks. The following three definitions allow networks to be constructed containing fixed size populations of a particular component type.
<Children name="populations" type="Population" />
<Children name="connectivities" type="EventConnectivity" />
</ComponentType>
<ComponentRef name="component" type="Component" />
<Parameter name="size" dimension="none" />
</ComponentType>
<Link name="source" type="Population" />
<Link name="target" type="Population" />
<Child name="Connections" type="ConnectionPattern" />
</ComponentType>
The harder part is to provide elements in the Behavior blocks to express what should be done with components based on these types. The Network element doesn't pose any problems because the default behavior on instantiation will do the right thing: it will instantiate each of the child populations and EventConnectivity elements.
But the population element needs to say that its instantiation involves making 'size' instances of the component referred to by the 'component' reference, where 'size' is the value supplied for the size parameter in a component specification. This can be done by including a Build element inside the Behavior block:
<ComponentRef name="component" type="Component" />
<Parameter name="size" dimension="none" />
<Behavior>
<Build>
<MultiInstantiate number="size" component="component" />
</Build>
</Behavior>
</ComponentType>
The MultiInstantiate specification says that there should be 'size' instances of the component referred to in the 'component' parameter created when the model is built. This overrides the default behavior. [TODO: what is the Build element content corresponding to the default behavior?].
This serves to create some rather simple populations. More complex specifications, such as putting one instance at each point of a grid satisfying a particular constraint could be handled via first declaring elements to form the grid, and then using selectors that pick the points in the population element to actually put the cells at [its not clear to me how much more would be required to make this work, other than implementing proper xpath-like selectors].
The following three types define a general connectivity structure with an abstract ConnectionPattern type, and a specific instance for All-All connectivity.
<Link name="source" type="Population" />
<Link name="target" type="Population" />
<Child name="Connections" type="ConnectionPattern" />
</ComponentType>
</ComponentType>
<Behavior>
<Build>
<ForEach instances="../source" as="a">
<ForEach instances="../target" as="b">
<EventConnection from="a" to="b" />
</ForEach>
</ForEach>
</Build>
</Behavior>
</ComponentType>
The Build element in the AllAll pattern uses a new ForEach construct and the EventConnectin element from before. The ForEach element operates selects each instance matching its 'instances' attribute, and applies the enclosing directives, much in the same way as for-each in XSL. The proof of concept interpreter also has Choose, When and Otherwise elements that operate much like their XSL equivalents, although these are not used in this example.


Introduction
This project is an analysis of a dataset I created by scraping the HTML from the crowdsourced Jeopardy! archive J! Archive. Read more about the impetus to this project on the About page and the methods I took for building the dataset, analyzing it, and visualizing it on the Methods page.
Topic Modeling
Using MALLET, I built a topic model for the clues on J! Archive. Below is a visual representation of the change in topic usage over the course of the show's run. My hope from this is to see trends in topic usage. For example, I noticed that "History/War" spikes to its highest usage during the Gulf War.
Hover over the line on the graph or the topic key in the legend to isolate each individual topic for viewing. You can also click on the line or legend text to hold it in place.
State-by-State Contestants
While looking at the data I collected from the archive, I noticed that most contestants were identified by their name, hometown, and profession. I stripped out their local town and isolated each one that was from the fifty U.S. states and the District of Columbia. From here, I took a count of how many came from each state and how many won at least one game, making sure to only count each contestant once.
After I had this list, I compared it to population estimates made by the U.S. Census Bureau for 2019, creating a proportion of number of contestants/winners to the total population. Below, I created a map of the United States and the District of Columbia, shading each state by the size of the proportion; the darker shade, the larger the proportion, and vice versa. Use the two buttons to switch between the two views and hover over each state to see more detailed information.
Gender in Jeopardy!
Past studies of gender in Jeopardy! has taken a few different forms over the years. They have either looked at the different kinds of topics men and women may have chosen to respond to or how they act during the game. While J! Archive does not include a reference to a contestant's gender in their description, I was able to use the third-party API Genderize.io to determine the most likely gender from their first name.
Gender By Series
Before looking at more in depth analysis of gender in Jeopardy!, it's important to know how many men and women have actually been on the show. I grouped together contestants by their gender (removing any contestants that Genderize.io was not able to determine) and took a count of each. I created a donut char for those numbers, showing that 42.5% of contestants are women and 57.5% are men. These numbers line up almost exactly with studies that used a small number of episodes to conduct their research.
Hover over the slices or the legend to get a more detailed view of the numbers.
Gender By Episode
During an actual episode of Jeopardy!, there are three contestants competing against each other. One of them is the winner from the previous episode (if there was one) and the other two are new contestants. I was able to determine the breakdown of those three contestants by gender, only including episodes where all three contestants had a known gender. A makeup of two men and one woman takes up the majority of episodes, with all three being women happening the least. Below is a donut chart showing the breakdown.
Hover over the slices or the legend to get a more detailed view of the numbers.
Are Topics Gendered?
I wanted to see if the topics that I generated using the topic modeling were gendered--as in, are certain genders more likely to both know the answer and get it right. My database includes information on which clues a contestant got right and which they got wrong. I grouped this all together by gender and did a chi-squared test to see if the difference between the genders is significant.
Use the select field below to update the stacked bar chart and show the results of the chi-squared test for each topic. Hover over the bars to get more detailed numbers.
Chi-Square
Critical Value
P-Value
Religion
Who Wins?
By the end of an episode, the contestant with the most money is declared the winner. They are allowed to come back to the next game and defend their win. Some are good enough to win multiple games and continue on and on until they lose. I grouped together the data in a way that shows the gender disparity in number of wins.
There is some disparity in the data between this and the total number of contestants by gender. Some games on J! Archive (and by extension, my own database) are incomplete. I did my best to account for this by having a boolean field in the database for indicating that the game had an unknown winner. Even with that, some contestants may be counted twice. However, it should be a very small number.
I created a stacked bar chart to show this breakdown. Hover over the bars to get more detailed numbers.
And Roughly How Much Do They Win?
For each game, I looked at the final total for the winning contestant. Grouping by year and gender, I took the median amount to determine a how much was roughly won each game. A time series chart below shows this relationship. Hover over the lines or the legend to isolate the lines.
The three most obvious points of reference are 2001-2002, 2004, and 2019. Between 2001 and 2002, the dollar amounts for each clue were doubled. During 2004 and 2019, two of the most successful contestants competed; Ken Jennings in 2004 and James Holzhauer in 2019. James Holzhauer was known for winning by a large margin, racking up a lot of money each game. 2011 and 2019 also saw an increase in median winnings for women. However, while I looked for a specific contestant that could've caused this, there were no long-term female winners in those years. The most successful female contestant, Julia Collins, competed in 2014--a year with no major change.


This is where the One Love SA team mainains data for the covid-action map.
See the code repo for technical details.


Getting started
Introduction
Point is a flexible CSS Framework for building modern responsive web apps.
- Built with Flexbox
- Mobile-First
- BEM, Namespaces, Modular, Beautiful code
- 12KB minified and gzipped
Setup
There are 3 ways to start
Install with Yarn
yarn add point-sass
Install with NPM
npm install point-sass --save
Direct <script>
Include
<link rel="stylesheet" href="dist/point.min.css" />
Customize
Point is coded in SASS, If you're familiar with it, You can continue.
1. Install the dependence
yarn add point-sass --dev
2. Set your variables
you can reference all initial variables in scss/_vars.scss
$master-palette: (
primary: #e74c3c
);
$link-color: #e74c3c;
3. Import Point at the end of your code
$master-palette: (
primary: #e74c3c
);
$link-color: #e74c3c;
// Your code
@import "node_modules/point-sass/point"
Browser Support
Point uses Normalize.css for CSS reset and Autoprefixer to make styles compatible with earlier browser versions. For best user experience, these browsers are recommended:
- Chrome
- Firefox
- Safari
- Opera
- Microsoft Edge
- Internet Explorer 10+
Copyright and license
Code copyright 2017 moyu. Code released under the MIT license.


| Package | Description |
|---|---|
| org.jaxen |
This package defines the core Jaxen API to the XPath engine.
|
| org.jaxen.dom |
Navigation for W3C DOM trees.
|
| org.jaxen.dom4j |
Navigation for dom4j trees.
|
| org.jaxen.javabean |
Navigation for JavaBeans.
|
| org.jaxen.jdom |
Navigation for JDOM trees.
|
| org.jaxen.pattern |
Defines XSLT Pattern objects.
|
| org.jaxen.saxpath |
Classes related to the event-based parsing and handling
of XPath expressions.
|
| org.jaxen.saxpath.base |
jaxen
implementation of the SAXPath functionality.
|
| org.jaxen.saxpath.helpers |
Helper classes for instantiating XPathReaders.
|
| org.jaxen.xom |
Navigation for XOM trees.
|
| Modifier and Type | Class and Description |
|---|---|
class |
FunctionCallException
Thrown if an exception occurs during the evaluation of a function.
|
class |
JaxenException
Generic Jaxen exception.
|
class |
UnresolvableException
Thrown when a function-call or variable-reference, or any other lookup
based on namespace and local name, couldn't be resolved.
|
class |
UnsupportedAxisException
Indicates attempt to evaluate an XPath axis that
is unsupported by the current object-model.
|
| Modifier and Type | Method and Description |
|---|---|
XPath |
Navigator.parseXPath(String xpath)
Returns a parsed form of the given XPath string, which will be suitable
for queries on documents that use the same navigator as this one.
|
| Modifier and Type | Method and Description |
|---|---|
XPath |
DocumentNavigator.parseXPath(String xpath)
Returns a parsed form of the given XPath string, which will be suitable
for queries on DOM documents.
|
| Modifier and Type | Method and Description |
|---|---|
XPath |
DocumentNavigator.parseXPath(String xpath)
Returns a parsed form of the given XPath string, which will be suitable
for queries on DOM4J documents.
|
| Modifier and Type | Method and Description |
|---|---|
XPath |
DocumentNavigator.parseXPath(String xpath) |
| Modifier and Type | Method and Description |
|---|---|
XPath |
DocumentNavigator.parseXPath(String xpath)
Returns a parsed form of the given XPath string, which will be suitable
for queries on JDOM documents.
|
| Modifier and Type | Method and Description |
|---|---|
static Pattern |
PatternParser.parse(String text) |
| Modifier and Type | Class and Description |
|---|---|
class |
XPathSyntaxException
Represents a syntax error in an XPath expression.
|
| Modifier and Type | Method and Description |
|---|---|
void |
XPathHandler.endAbsoluteLocationPath()
Receive notification of the end of an absolute location path expression.
|
void |
XPathHandler.endAdditiveExpr(int additiveOperator)
Receive notification of the end of an additive ('+' or '-') expression.
|
void |
XPathHandler.endAllNodeStep()
Receive notification of the end of a node() step.
|
void |
XPathHandler.endAndExpr(boolean create)
Receive notification of the end of an 'and' expression.
|
void |
XPathHandler.endCommentNodeStep()
Receive notification of the end of a comment() step.
|
void |
XPathHandler.endEqualityExpr(int equalityOperator)
Receive notification of the end of an equality ('=' or '!=') expression.
|
void |
XPathHandler.endFilterExpr()
Receive notification of the end of a filter expression.
|
void |
XPathHandler.endFunction()
Receive notification of the end of a function call
|
void |
XPathHandler.endMultiplicativeExpr(int multiplicativeOperator)
Receive notification of the start of a multiplicative ('*', 'div' or 'mod') expression.
|
void |
XPathHandler.endNameStep()
Receive notification of the end of a NameStep
|
void |
XPathHandler.endOrExpr(boolean create)
Receive notification of the end of an 'or' expression.
|
void |
XPathHandler.endPathExpr()
Receive notification of the end of a path expression.
|
void |
XPathHandler.endPredicate()
Receive notification of the end of a predicate.
|
void |
XPathHandler.endProcessingInstructionNodeStep()
Receive notification of the end of a processing-instruction(...) step.
|
void |
XPathHandler.endRelationalExpr(int relationalOperator)
Receive notification of the start of a relational ('<', '>', '<=', or '>=') expression.
|
void |
XPathHandler.endRelativeLocationPath()
Receive notification of the end of a relative location path expression.
|
void |
XPathHandler.endTextNodeStep()
Receive notification of the end of a text() step.
|
void |
XPathHandler.endUnaryExpr(int unaryOperator)
Receive notification of the end of a unary ('+' or '-') expression.
|
void |
XPathHandler.endUnionExpr(boolean create)
Receive notification of the end of a union ('|') expression.
|
void |
XPathHandler.endXPath()
Receive notification of the end of an XPath expression parse.
|
void |
XPathHandler.literal(String literal)
Receive notification of a literal expression.
|
void |
XPathHandler.number(double number)
Receive notification of a number expression.
|
void |
XPathHandler.number(int number)
Receive notification of a number expression.
|
void |
XPathReader.parse(String xpath)
Parse an XPath expression,
and send event callbacks to an
XPathHandler . |
void |
XPathHandler.startAbsoluteLocationPath()
Receive notification of the start of an absolute location path expression.
|
void |
XPathHandler.startAdditiveExpr()
Receive notification of the start of an additive ('+' or '-') expression.
|
void |
XPathHandler.startAllNodeStep(int axis)
Receive notification of the start of a node() step.
|
void |
XPathHandler.startAndExpr()
Receive notification of the start of an 'and' expression.
|
void |
XPathHandler.startCommentNodeStep(int axis)
Receive notification of the start of a comment() step.
|
void |
XPathHandler.startEqualityExpr()
Receive notification of the start of an equality ('=' or '!=') expression.
|
void |
XPathHandler.startFilterExpr()
Receive notification of the start of a filter expression.
|
void |
XPathHandler.startFunction(String prefix,
String functionName)
Receive notification of a function call.
|
void |
XPathHandler.startMultiplicativeExpr()
Receive notification of the start of a multiplicative ('*', 'div' or 'mod') expression.
|
void |
XPathHandler.startNameStep(int axis,
String prefix,
String localName)
Receive notification of the start of a name step.
|
void |
XPathHandler.startOrExpr()
Receive notification of the start of an 'or' expression.
|
void |
XPathHandler.startPathExpr()
Receive notification of the start of a path expression.
|
void |
XPathHandler.startPredicate()
Receive notification of the start of a predicate.
|
void |
XPathHandler.startProcessingInstructionNodeStep(int axis,
String name)
Receive notification of the start of a processing-instruction(...) step.
|
void |
XPathHandler.startRelationalExpr()
Receive notification of the start of a relational ('<', '>', '<=', or '>=') expression.
|
void |
XPathHandler.startRelativeLocationPath()
Receive notification of the start of a relative location path expression.
|
void |
XPathHandler.startTextNodeStep(int axis)
Receive notification of the start of a text() step.
|
void |
XPathHandler.startUnaryExpr()
Receive notification of the start of a unary ('+' or '-') expression.
|
void |
XPathHandler.startUnionExpr()
Receive notification of the start of a union ('|') expression.
|
void |
XPathHandler.startXPath()
Receive notification of the start of an XPath expression parse.
|
void |
XPathHandler.variableReference(String prefix,
String variableName)
Receive notification of a variable-reference expression.
|
| Modifier and Type | Method and Description |
|---|---|
void |
XPathReader.parse(String xpath) |
| Modifier and Type | Method and Description |
|---|---|
static XPathReader |
XPathReaderFactory.createReader()
Create an
XPathReader using the value of
the org.saxpath.driver system property. |
static XPathReader |
XPathReaderFactory.createReader(String className)
Create an
XPathReader using the passed
in class name. |
void |
DefaultXPathHandler.endAbsoluteLocationPath() |
void |
DefaultXPathHandler.endAdditiveExpr(int operator) |
void |
DefaultXPathHandler.endAllNodeStep() |
void |
DefaultXPathHandler.endAndExpr(boolean create) |
void |
DefaultXPathHandler.endCommentNodeStep() |
void |
DefaultXPathHandler.endEqualityExpr(int operator) |
void |
DefaultXPathHandler.endFilterExpr() |
void |
DefaultXPathHandler.endFunction() |
void |
DefaultXPathHandler.endMultiplicativeExpr(int operator) |
void |
DefaultXPathHandler.endNameStep() |
void |
DefaultXPathHandler.endOrExpr(boolean create) |
void |
DefaultXPathHandler.endPathExpr() |
void |
DefaultXPathHandler.endPredicate() |
void |
DefaultXPathHandler.endProcessingInstructionNodeStep() |
void |
DefaultXPathHandler.endRelationalExpr(int operator) |
void |
DefaultXPathHandler.endRelativeLocationPath() |
void |
DefaultXPathHandler.endTextNodeStep() |
void |
DefaultXPathHandler.endUnaryExpr(int operator) |
void |
DefaultXPathHandler.endUnionExpr(boolean create) |
void |
DefaultXPathHandler.endXPath() |
void |
DefaultXPathHandler.literal(String literal) |
void |
DefaultXPathHandler.number(double number) |
void |
DefaultXPathHandler.number(int number) |
void |
DefaultXPathHandler.startAbsoluteLocationPath() |
void |
DefaultXPathHandler.startAdditiveExpr() |
void |
DefaultXPathHandler.startAllNodeStep(int axis) |
void |
DefaultXPathHandler.startAndExpr() |
void |
DefaultXPathHandler.startCommentNodeStep(int axis) |
void |
DefaultXPathHandler.startEqualityExpr() |
void |
DefaultXPathHandler.startFilterExpr() |
void |
DefaultXPathHandler.startFunction(String prefix,
String functionName) |
void |
DefaultXPathHandler.startMultiplicativeExpr() |
void |
DefaultXPathHandler.startNameStep(int axis,
String prefix,
String localName) |
void |
DefaultXPathHandler.startOrExpr() |
void |
DefaultXPathHandler.startPathExpr() |
void |
DefaultXPathHandler.startPredicate() |
void |
DefaultXPathHandler.startProcessingInstructionNodeStep(int axis,
String name) |
void |
DefaultXPathHandler.startRelationalExpr() |
void |
DefaultXPathHandler.startRelativeLocationPath() |
void |
DefaultXPathHandler.startTextNodeStep(int axis) |
void |
DefaultXPathHandler.startUnaryExpr() |
void |
DefaultXPathHandler.startUnionExpr() |
void |
DefaultXPathHandler.startXPath() |
void |
DefaultXPathHandler.variableReference(String prefix,
String variableName) |
| Modifier and Type | Method and Description |
|---|---|
XPath |
DocumentNavigator.parseXPath(String s) |
Copyright © 2016. All rights reserved.


It's every parent's nightmare.  Then the media descends on your home, anxious for all the details. That situation is played for laughs in "The Rugrats Movie," and while it might also be a nightmare of many parents to have to pay to see Tommy, Chuckie and Angelica on the big screen, "Rugrats" has more than enough hijinks and gross-out humor to keep the under-10 crowd in hysterics for 90 minutes. Older viewers might catch themselves chuckling as well, especially when Tommy's pregnant mom insists on checking into the Lipschitz Maternity Arts Center -- which promises it's "state-of-the-art in primitive birth alternatives" -- or when an obnoxious tabloid reporter grills grieving parents with questions like "Is it true a dingo ate your baby?". Certainly the kids won't pick up on how alternative-rock pioneers like Patti Smith, Laurie Anderson and Beck provide the vocals for a nursery full of complaining babies, or catch the easily recognizable tones of Whoopi Goldberg and David Spade as a pair of forest rangers who assist in rescuing the Rugrats from the wilderness. That's not to say that all of "Rugrats" is sophisticated and in-jokey. Many of the jokes are built around "chocolate pants" (think diapers) and bodily functions, the kind of lightly raunchy material that's, in Rugrat parlance, "more fun than picking noses" to those whose ages are still in the single digits. But, to balance things out slightly, "Rugrats" does offer a gently delivered message about how older siblings need to overcome feelings of jealousy and take part in raising a new baby. In this case, Tommy feels he's lost his place in the Pickles family after the arrival of little brother Dylan, who seems to exist solely to smack Tommy around and weep rivers of tears. The only disappointment the target audience for "Rugrats" is likely to feel comes from the movie's underemployment of bratty cousin Angelica, who is kept out of the action for most of the movie. The feature is preceded by a raucous "Catdog" short, in which the half-feline/half-canine manages to cause citywide destruction and an airplane crash while trying to win a call-in radio contest. Its relentless comic violence and hyperactivity would have made maverick "Golden Age" animator Tex Avery proud. James Sanford
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


{% extends "layout_multi_sections.html" %} {% block page_title %} Trade On Our Markets {% endblock %} {% block css_register %} {% endblock %} {% block header %} Trade On Our Markets {% endblock %} {% block main_nav %} {% include "includes/leedsmarkets/main_nav.html" %} {% endblock %} {% block sectionOneTop %} {% endblock %} {% block sectionOneFull%} {% endblock %} {% block breadcrumb %} {% include "includes/breadcrumb_sp.html" %} {% endblock %} {% block sectionOneContent %} {% endblock %} {% block pageContent %}
It’s never been easier to get trading. The Markets Service is always happy to hear from anybody who wants to open up a stall whether you’re an old hand or a complete beginner. There are normally always stalls available and you’ll find vast choice of markets across a number of locations in Leeds.
If you’re not sure which application you need to use you can give us a ring on 0113 378 1950.
If you’re not sure which application you need to use you can give us a ring on 0113 378 1950.


Before Change
def evaluate(self, dataset, pipelines):
self.verify(dataset)
for subject in dataset.subject_list:
// check if we already have result for this subject/pipeline
// we might need a better granularity, if we query the DB
run_pipes = self.results.not_yet_computed(pipelines,
After Change
def evaluate(self, dataset, pipelines):
if not self.is_valid(dataset):
raise AssertionError("Dataset is not appropriate for evaluation")
for subject in dataset.subject_list:
// check if we already have result for this subject/pipeline
// we might need a better granularity, if we query the DB
run_pipes = self.results.not_yet_computed(pipelines,


glam2 [options] <alphabet> <sequence file>
The alphabet of the sequences. This can be 'p' for protein sequences, 'n' for nucleotide sequences or the name of a GLAM2 alphabet file.
A file containing FASTA formatted sequences.
Outputs
GLAM2 writes its output to files in a directory named
glam2_out
, which it creates if necessary. You can change the
output directory using the -o or -O options.
The directory will contain:
glam2.html
-
an HTML file containing the results in a human-readable formatglam2.txt
-
a plain text file containing the resultsSee the tutorial for a detailed description of GLAM2's output.
GLAM2 might occasionally issue this warning: 'accuracy loss due to numeric underflow'. If this happens, its ability to optimize the alignment may be harmed: see GLAM2 methods (PDF) for details. To fix this, try increasing -u, or possibly decreasing -b. Increasing -u somewhat should be harmless, as long as it stays well below 1.
| Option | Parameter | Description | Default Behavior |
|---|---|---|---|
| Input/Output | |||
| Alignment Options | |||
| -2 | Search both strands. | ||
| -z | minimum sites | Specify the minimum number sequences that must participate in the alignment. If greater than the number of input sequences, then all the sequences must participate. | |
| -a | minimum aligned | Specify the minimum number of key positions (aligned columns) in the alignment. | |
| -b | maximum aligned | Specify the maximum number of key positions (aligned columns) in the alignment. | |
| Scoring Scheme | |||
| -d | pseudocount | Specify a Dirichlet mixture file, which describes residues' tendencies to align with one another. | |
| -D | pseudocount | Specify the deletion pseudocount. | |
| -E | pseudocount | Specify the 'no-deletion' pseudocount. | |
| -I | pseudocount | Specify the insertion pseudocount. | |
| -J | pseudocount | Specify the 'no-insertion' pseudocount. | |
| -q | weight | Specify the weight for generic versus sequence-set-specific residue abundances. The residue abundances are estimated by counting the residue types in all the input sequences, and adding pseudocounts. The total number of pseudocounts is equal to the alphabet size multiplied by the -q parameter. The allocation of pseudocounts among the residue types depends on the alphabet. | |
| Search Algorithm | |||
| -r | num | Specify the number of alignment runs. | |
| -n | n | Specify how many iterations should pass since the highest-scoring alignment seen so far before ending each alignment run. | |
| -w | aligned columns | Specify the initial number of key positions (aligned columns) in the alignment. If less than the minimum (-a) or greater than the maximum (-b), it is increased to the minimum or reduced to the maximum. | |
| -t | temperature | Specify the initial temperature. | |
| -c | cooling factor | Specify the cooling factor per n iterations. The temperature is multiplied by a constant factor after each iteration, such that after n iterations, it has dropped by this amount. The -n option is used to set the n value. | |
| -u | minimum temperature | Specify the minimum temperature. The temperature never drops below this level, to avoid numerical problems. | |
| -m | probability | Specify the rate of column sampling relative to site sampling. On each iteration, glam2 randomly decides to try either realigning a sequence or adjusting an aligned column (key position). This parameter sets the probabilities for this decision. | |
| -x | 0|1|2 | Specify the site sampling algorithm: 0=FAST, 1=SLOW, 2=FFT. See GLAM2 methods (PDF) for details. In summary, the FAST algorithm deviates slightly from the strict definition of simulated annealing, but works well in practice. The SLOW algorithm implements strict simulated annealing, but is much slower, especially for longer sequences. The FFT algorithm also implements strict simulated annealing, and has intermediate speed, but carries greater risk of numerical roundoff error. In order to use the FFT algorithm, it is necessary to install the FFTW library, and re-compile glam2 with 'make glam2fft'. | |
| -s | seed | Specify the seed for pseudo-random number generation. Change this to avoid getting identical results each time the program is run. | |
| Cosmetic | |||
| -p | Print information about the algorithm's state before each iteration. The following information is printed: the temperature, the number of key positions in the alignment, the number of sequences in the alignment, and the alignment's score. In addition, some information about each move is printed: for site sampling moves, which sequence is picked, and for column sampling moves, which column is picked, whether or not it is deleted, and whether the direction is left or right. | ||
| -Q | Run quietly, suppressing unnecessary messages. |
GLAM2 was developed by Martin C Frith, working at the Computational Biology Research Center in Tokyo, and Timothy L Bailey, working at the Institute for Molecular Bioscience in Brisbane. The source code and documentation are hereby released into the public domain.


"LUNATIC "probably the same as epileptic, the symptoms of which disease were supposed to be more aggravated as the moon increased. In Matthew 4:24 “lunatics” are distinguished from demoniacs. In 17:15 the name “lunatic” is applied to one who is declared to have been possessed. (See DAEMONIAC.)
"LUNATIC "probably the same as epileptic, the symptoms of which disease were supposed to be more aggravated as the moon increased. In Matthew 4:24 “lunatics” are distinguished from demoniacs. In 17:15 the name “lunatic” is applied to one who is declared to have been possessed.
(See DAEMONIAC.)


--- layout: post title: My side project queue date: 2013-08-14 13:50:20.000000000 +02:00 categories: - _ tags: [] status: publish type: post published: true meta: _edit_last: '1' _rawhtml_settings: '0,0,0,0' author: login: cybear email<EMAIL_ADDRESS>display_name: cybear first_name: '' last_name: '' ---
Inspired by Matt Swanson's post "My Side Project Queue" I decided to write down my own.
I have been on parental leave for the last 10 months which has given me many opportunities to think and few opportunities to code. It gives an advantage when it comes to implementation as you frequently force yourself to throw away bad ideas even before you started working on them.
Never the less, I've come to collect more ideas than I have time to work on. Just for fun I thought I would share with you, reader of the Interwebs, and maybe someone would find it interesting / useful. If you believe in one of these ideas, feel free to take it and run with it. Also feel free to talk to me about it if you'd like to.
Working title: Cap5, a captive portal
Quick Pitch: Second Screen interaction should be web based because you shouldn't have to download an app. And why should you scan a QR code? Captive Portal makes it easier to get started: Just connect with your smartphone to the SSID and the web app opens by itself.
User: Anyone is a bypassing user who wants to interact with a public display or system that should have a web gui: TV:s, cars, train station monitors, public city guide screens.
Stack: OpenWRT, IPTables, NAT
Working title: Digital graffiti
Quick Pitch: A public Second Screen app for Collaborative Interactive Art. Projector is beaming on a big wall for instance in a mall. By-passers connect and draw and add photos using their smartphones.
Stack:
Server: Raspberry Pi, NodeJS, Socket.IO
WiFi Router: Runs Cap5
Projector: HTML5, canvas, JavaScript
Client: HTML5, canvas, JavaScript
Working title: Real Estate Broker Interactive Window
Quick Pitch: Real Estate brokers often have a display in their windows showing their latest objects. But if you don't read fast enough, it will scroll to the next object. Using a captive portal we can make them interactive, using smartphone as a remote. The user will have time to read everything and can also interact in other ways like leaving their phone number and saving the object to their phone.
Stack:
Server: Raspberry Pi, NodeJS, Socket.IO
WiFi Router: Runs Cap5
Store Window TV: HTML5, CSS3, JavaScript
Client: HTML5, CSS3, canvas, JavaScript, connects with WiFi
Working title: Devices help games
Quick Pitch: What if you could use your tablet and smartphones as external displays for your games? For instance, move the instruments of a flight simulator to external devices to free up space on the main display and make use of the devices you already have.
Server: NodeJS, Socket.IO, some way to interface with the games
WiFi Router: Runs Cap5
Client: HTML5, canvas, JavaScript, connects with WiFi
Game: Would need an API for external displays
Working title: Whiteboard IO
Quick Pitch: A digital whiteboard for meetings. Same whiteboard can be visible on several locations at once. Users connect and interface with the whiteboard with their smartphones. Add meeting notes, mind maps, photos, URLs. The result is e-mailed to the participants in a nice format.
Server: NodeJS, Socket.IO
WiFi Router: Runs Cap5
Client: HTML5, canvas, JavaScript, connects with WiFi
Working title: Wood IO
Quick Pitch: Internet of Things for kids: Hand-crafted wooden toys with cool circuitry inside. Equally or more immerse than other interactive toys for the kid. More fun for the geeky mom or dad. Healthier than plastics (which sometimes contain heavy metals).
Stack: Embedded platform like Spark! Core or Electric Imp. Backend would be Node.JS with Socket.IO.


Open this link on your iOS device in order to install it. Link will expire in {expiration} minutes
Try again


Plot data accessor function when used with GraphTrack
Set condition for what data to plot. Default is v => v !== null
Y axis (range) for plot data. Default is [0, 100].
Used to control how much overlap or excess is added when filtering data compared to the current domain. Ex. if the current domain is [100, 200], and with an overlap factor of 0.5, data will be filtered using the extended domain [50, 250], leaving an excess of 50 units in both ends. This improves the user experience during panning.
Automatically filter data to current scale. This may increase performance for larger datasets, as data outside the current domain is not passed to the plots. Overlap may be controlled by the filterOverlapFactor option. Filtering is off (false) by default.
Flag to hide/show a plot. Default is false.
Set plot orientation. Default is true (horizontally).
The number of rows in the legend section (if used with LogController) this particular plot requires
offset position to draw the plot
Scale type: 'linear' or 'log'. Default is 'linear'.
Generated using TypeDoc
Base interface for plot options


SQL Object Argument Binding
Arguments passed to properly annotated methods on sql object instances will be bound to the statements being executed. There are two binding annotations included with JDBI, @Bind
and @BindBean
. In addition to these binding annotations, there is a facility for defining your own.
The @Bind
annotation binds a single named argument. If no value is specified for the annotation it will bind the argument to the name it
. For example:
public static interface BindExamples
{
@SqlUpdate("insert into something (id, name) values (:id, :name)")
void insert(@Bind("id") int id, @Bind("name") String name);
@SqlUpdate("delete from something where name = :it")
void deleteByName(@Bind String name);
}
The @BindBean
annotation binds JavaBeans™ properties by name. If no value is given to the annotation the bean properties will be bound directly to their property names. If a value is given, the properties will be prefixed by the value given and a period. Take the Something
bean, which has the properties id
and name
in the following example:
public static interface BindBeanExample
{
@SqlUpdate("insert into something (id, name) values (:id, :name)")
void insert(@BindBean Something s);
@SqlUpdate("update something set name = :s.name where id = :s.id")
void update(@BindBean("s") Something something);
}
Finally, we can define our own binding annotations. To do this we create an annotation type annotated with the @BindingAnnotation
annotation. This annotation requires a value, which is a Class
implementing BinderFactory
. The BinderFactory
is parameterized with the annotation type and the type of argument expected. When your custom binding annotation is used, a binder factory will be created and used to create Binder
instances which actually bind the values. Let’s look at a trivial example.
// our binding annotation
@BindingAnnotation(BindSomething.SomethingBinderFactory.class)
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.PARAMETER})
public @interface BindSomething
{
public static class SomethingBinderFactory implements BinderFactory
{
public Binder build(Annotation annotation)
{
return new Binder<BindSomething, Something>()
{
public void bind(SQLStatement q, BindSomething bind, Something arg)
{
q.bind("ident", arg.getId());
q.bind("nom", arg.getName());
}
};
}
}
}
This binding annotation, @BindSomething
is used to bind the properties of a something instance to the names ident
and nom
. The binding annotation is declared to be a binding annotation, using the static inner class SomethingBinderFactory
. It is also declared to only apply to methods, and that it should be retained at runtime (the @Retention(RetentionPolicy.RUNTIME)
annotation is really important, don’t forget it).
The SomethingBinderFactory
produces a Binder
instance which will receive the sql statement, the annotation which lead to it being used, and the argument which it is to bind. In this case it binds values statically, but you could have any values on the annotation you like to influence how it is bound.


Inspired by the dawn in Utah's deserts, specifically Goblin Valley.
The desert sunrise
Glistens over the sand and stone
Bathes stone heads in light
One hobby I have is tabletop gaming, sometimes referred to as pen and paper roleplaying. I started sometime around middle school, and has continued to the present day. Some of the systems I play and have played are D&D, Call of Cthulhu, Star Wars, and Shadow of the Demon Lord.
Another of my hobbies is reading. Having been an avid reader since elementary school, I have read through several series, and collected several books througout the years. Even after all the time I have spent, I still continue to read when I can, as well as pick up new books whenever I can.
When I was young, I also spent a lot of time in Boy Scouts, and going Camping and Hiking outdoors. I've always enjoyed getting outside and into nature, and fortunately, there are a lot of good places to do so in Utah. I have had a great time hiking, camping, boating, and fishing in this state.
| Monday | Tuesday | Wednesday | Thursday | Friday | |
|---|---|---|---|---|---|
| 9:00 | Calculus | Calculus | Calculus | Calculus | Calculus |
| 9:30 | |||||
| 10:00 | |||||
| 10:30 | |||||
| 11:00 | |||||
| 11:30 | |||||
| 12:00 | Institute | Institute | |||
| 12:30 | |||||
| 1:00 | Web Page Development | Web Page Development | |||
| 1:30 | |||||
| 2:00 | Data Structures and Algorithms | Data Structures and Algorithms | |||
| 2:30 | C++ | C++ | |||
| 3:00 | |||||
| 3:30 |


Enter your call set ID
Choose a trait
Name
Contig
Position
Allele
Call set genotype
Call set score
Score


qui.cicularMenu Demo
Instructions: Right click on the gray container to open the circular context menu.
qui.rateIt Demo
Instructions: Click on one slot to rate from 1 to 10.
You have rated 4.
Instructions: Right click on the gray container to open the circular context menu.
Instructions: Click on one slot to rate from 1 to 10.


I love software...specifically web dev. I'm experienced in Javascript, and I'm particularly proficient in React.
I have listed some of my skills below
Call me on my cell or send me an email or click one of the following links to learn more about me. LinkedIn Github


Quadrature counting with typical counter
Quadrature tracking counters are a bit rare in the microcontroller world, and rarely more than one per chip.
---
Using just io-pin interrupts:
At low speeds one should poll as jitter can cause rapid interrupts.
Up to a moderate speed one can feed the quadrature signals to interrupts, and in each isr inspect the other signal to decide whether to count up or down. At high
speeds the mechanism limits the ability to change direction, so after some threshold of time between pulses one can switch into just counting edges of one signal
after recording the direction of travel.
As the mechanism slows down one can switch back to using isr's to do the decode.
If one is setting a motion breakpoint, for example to trigger data acquisition when a sensor is in position, one can figure out which quarter phase matters and use
that to decide which edge is fed into the counter.
---
Using a timer/counter that has external enable and external clock modes:
Most counters have an operational mode where they measure a pulse width, by using the input signal as a count enable. That can provide a speed measurement when
using the isr to decode steps. When the number rises past a threshold then one has a quarter of that time to reconfigure the counter to count future edges.
Since the counter usually will only count up when externally clocked one must maintain the position as sign+magnitude rather than 2's complement.
Since the counter isn't as many bits as you should support you would use the counter overflow to increment and extended value.
---
In all cases an index input must be handled as such:
In one direction a rising edge is the index location, in the other direction the falling edge is of interest. If hovering on the edge then life can be difficult,
you will have to analog/debounce filter the quadrature signals to keep them from changing faster than the time it takes to reconfigure the interrupt polarity
(unless you have a system which offers 'any change')
Nice systems guarantee that the index signal will be active slightly before and after only one quarter phase. If so then one can sample the index pin when
responding to a quadrature clock (slow speed operation).
For systems where the index is sloppier one may choose to simple record index changes and not reset the steps counter. One can then use modulo math to determine the
cycle phase. That works even of the steps counter wraps, so long as one implements the modulo operation to take that into account.
When using an actual quadrature counting hardware mechanism one might have to deal with counter overflows. At moderate rates of speed there would be no jitter and
one can look at the MSB of the counter to determine if the overflow was to zero or from zero. Although some hardware might retain a status bit indicating the
direction of the last increment that might at low speeds flip before the isr gets around to checking for it, trust the MSB. If the mechanism is going very slow, and
especially when nominally stopped, one can get rapid rollovers as the encoder rocks around the 64k/0 step (for 16 bit counter). One must drop use of the counter and
go to polling the pins in order to debounce that.
If one tracks 'time since last rollover interrupt' one could detect this and disable that phase, only tracking the other for a bit. Noting two rollovers in the same
direction close together implies a missed transition.
One can also fix the damn motor to not do this. Any such jitter is due to an overreactive PID loop (ignoring the case of an oscillatory external force, such as
building vibrations given we are talking 100kHZ or so being needed for this to be a problem). One can choose to set the PID to low P + high I when one is standing
still.


Reports 'fall-through' in a switch statement.
Fall-through is defined to occur when a series of executable statements after a switch label is not guaranteed
to transfer control before the next switch label. In that case, control falls through to the statements after
that switch label, even though the switch expression does not equal
the value of the fallen-through label. While occasionally intended, this construction is confusing, and is often the result of a typo.
This inspection ignores any fall-through commented with a text matching the regex pattern (?i)falls?\s*thro?u
.
Powered by InspectionGadgets