public final class Document extends Object implements Serializable
stored
with the document, in which
case it is returned with search hits on the document. Thus each document
should typically contain one or more stored fields which uniquely identify
it.
Note that fields which are
not
stored
are
not
available in documents retrieved from the index, e.g. with
ScoreDoc.doc
,
Searcher.doc(int)
or
IndexReader.document(int)
.
| Constructor and Description |
|---|
Document
()
Constructs a new document with no fields.
|
| Modifier and Type | Method and Description |
|---|---|
void
|
add
(
Fieldable
field)
Adds a field to a document.
|
String
|
get
(
String
name)
Returns the string value of the field with the given name if any exist in
this document, or null.
|
byte[]
|
getBinaryValue
(
String
name)
Returns an array of bytes for the first (or only) field that has the name
specified as the method parameter.
|
byte[][]
|
getBinaryValues
(
String
name)
Returns an array of byte arrays for of the fields that have the name specified
as the method parameter.
|
float
|
getBoost
()
Returns, at indexing time, the boost factor as set by
setBoost(float)
.
|
Field
|
getField
(
String
name)
Deprecated.
use
getFieldable(java.lang.String)
instead and cast depending on
data type.
|
Fieldable
|
getFieldable
(
String
name)
Returns a field with the given name if any exist in this document, or
null.
|
Fieldable
[]
|
getFieldables
(
String
name)
Returns an array of
Fieldable
s with the given name.
|
List
<
Fieldable
>
|
getFields
()
Returns a List of all the fields in a document.
|
Field
[]
|
getFields
(
String
name)
Deprecated.
use
getFieldable(java.lang.String)
instead and cast depending on
data type.
|
String
[]
|
getValues
(
String
name)
Returns an array of values of the field specified as the method parameter.
|
void
|
removeField
(
String
name)
Removes field with the specified name from the document.
|
void
|
removeFields
(
String
name)
Removes all fields with the given name from the document.
|
void
|
setBoost
(float boost)
Sets a boost factor for hits on any field of this document.
|
String
|
toString
()
Prints the fields of a document for human consumption.
|
public void setBoost(float boost)
The default value is 1.0.
Values are multiplied into the value of
Fieldable.getBoost()
of
each field in this document. Thus, this method in effect sets a default
boost for the fields of this document.
Fieldable.setBoost(float)
public float getBoost()
setBoost(float)
.
Note that once a document is indexed this value is no longer available
from the index. At search time, for retrieved documents, this method always
returns 1. This however does not mean that the boost value set at indexing
time was ignored - it was just combined with other indexing time factors and
stored elsewhere, for better indexing and search performance. (For more
information see the "norm(t,d)" part of the scoring formula in
Similarity
.)
setBoost(float)
public final void add( Fieldable field)
Adds a field to a document. Several fields may be added with the same name. In this case, if the fields are indexed, their text is treated as though appended for the purposes of search.
Note that add like the removeField(s) methods only makes sense prior to adding a document to an index. These methods cannot be used to change the content of an existing index! In order to achieve this, a document has to be deleted from an index and a new changed version of that document has to be added.
public final void removeField( String name)
Removes field with the specified name from the document. If multiple fields exist with this name, this method removes the first field that has been added. If there is no field with the specified name, the document remains unchanged.
Note that the removeField(s) methods like the add method only make sense prior to adding a document to an index. These methods cannot be used to change the content of an existing index! In order to achieve this, a document has to be deleted from an index and a new changed version of that document has to be added.
public final void removeFields( String name)
Removes all fields with the given name from the document. If there is no field with the specified name, the document remains unchanged.
Note that the removeField(s) methods like the add method only make sense prior to adding a document to an index. These methods cannot be used to change the content of an existing index! In order to achieve this, a document has to be deleted from an index and a new changed version of that document has to be added.
@Deprecated public final Field getField( String name)
getFieldable(java.lang.String)
instead and cast depending on
data type.
NumericField
.
ClassCastException
- if you try to retrieve a numerical or
lazy loaded field.
public Fieldable getFieldable( String name)
public final String get( String name)
NumericField
it returns the string value of the number. If you want
the actual
NumericField
instance back, use
getFieldable(java.lang.String)
.
public final List < Fieldable > getFields()
Note that fields which are
not
stored
are
not
available in documents retrieved from the
index, e.g.
Searcher.doc(int)
or
IndexReader.document(int)
.
@Deprecated public final Field [] getFields( String name)
getFieldable(java.lang.String)
instead and cast depending on
data type.
Field
s with the given name.
This method returns an empty array when there are no
matching fields. It never returns null.
Do not use this method with lazy loaded fields or
NumericField
.
name
- the name of the field
Field[]
array
ClassCastException
- if you try to retrieve a numerical or
lazy loaded field.
public Fieldable [] getFieldables( String name)
Fieldable
s with the given name.
This method returns an empty array when there are no
matching fields. It never returns null.
name
- the name of the field
Fieldable[]
array
public final String [] getValues( String name)
NumericField
s it returns the string value of the number. If you want
the actual
NumericField
instances back, use
getFieldables(java.lang.String)
.
name
- the name of the field
String[]
of field values
public final byte[][] getBinaryValues( String name)
name
- the name of the field
byte[][]
of binary field values
public final byte[] getBinaryValue( String name)
null
if no binary fields with the specified name are available.
There may be non-binary fields with the same name.
name
- the name of the field.
byte[]
containing the binary field value or
null


The newsletter of the University of Oregon UO College of Education newsletter
Congresswoman Suzanne Bonamici met with top researchers at the COE to arm herself with the data she'll need to reauthorize the Institute of Education Sciences.
November 23
Nortec Collective Presents: Bostich + Fussible
December 6
The Gift Economy: A Model for Collaborative Community
December 14-January 5
Winter break
Michael Bullis recognized for his research.
Leslie Leve featured in Around the O.
Lisa Mazzei awarded for her book on qualitative research.
Nominations open for Alumni Awards (through January 31).
Radical Teaching Method Could Unleash a Generation of Geniuses (WIRED)
"Issues and problems are enormous, but the solution is one. It is simple. That is education." - Malala Yousafzai (DAILY SHOW)
15 books That will make you a better teacher
Fifty-five years after the historic planting of a buckeye tree in front of Lillis Hall, the football players and cheerleader who were there—all COE alumni—returned to commemorate the event, and made some new friends.
The 2014 U.S. News and World Report college rankings are out; the COE excels despite the decreasing state support and increased competition for federal funds.


Sponsored by
Educational resources
General Wisdom
-
Great Thinkers and Visionaries
Gifted Children
-
Hoagies' Gifted Education Page
-
Boston University Academy
for gifted children
- Gifted Refs
- Institute for the Academic Advancement of Youth (IAAY)
- EPGY - Edcational Program for Gifted Youth at Stanford
- ARC - Academic Research Center
- TIP (Talent Identification Program), Duke University
Mathematics
- History of Mathematics
- Some interesting mathematical references
- Mathematical games and recreations
Other Educational sources
- Yahoo Education references
- European IQ test (up to 174)
- The Nine Planets
- EdWeb
- U.S. Department of Education
- The Globewide Network Academy
- K12 Educational Resources
- Ideas and Education
-
Virtual Frog Dissection Kit
- MSTE at UIUC
- History of Technology (ICE)
- Periodic Table of Elements
- Dr. Matrix sites of Science Excellence
LinkExchange member
Member of 123Banners


PUMPETITION
PUMP OR DEATH - THE DEATH OF COMPETITION
We track your poses
Inspire yourself while working out with people
HOW IT WORKS
' SQUAT SQUAT SQUAT '
SELECT THE PLAYER MODE


0.17.1
Sends user search request
(Object)
The results of user search
{type: Action, searchData: Object}
:
Results from search
Sends user search request
(Object)
any
:
SEARCHTERM action
Changes to red color
Changes to green color
Changes to blue color
Changes to yellow color
Changes to purple color
Changes to default color (clear)
Creates a notification
(String)
The message that the notification should have
{type: Action, notificationMessage: String}
:
Notification message
Deletes the notification
(String)
The id of the notification
{type: Action, notificationId: String}
:
Notification id
Save requests for doc propogated to RenderText
Updates last updated date in application state
(Object)
A new value to set the last update date value to
{type: Action, val: Object}
:
Update save to last update date
Adds highlight to annotations
(Object)
An object that contains color, text, id
{type: Action, highlightData: Object}
:
HIGHLIGHT action
Adds comment to highlight
(Object)
An object that takes a comment text and a id to associate to the correct highlight
{type: Action, commenthData: Object}
:
COMMENT action
Sends delete request
(String)
The id of the highlight that is to be deleted
{type: Action, deleteId: String}
:
DELETE action
Tells which highlight id should be in view
(String)
Id of the highlight that is to be veiwed/centered on the screen
{type: Action, id: String}
:
VIEW action
Switches boolean to hide all annotations on a page
Resets annotations list for new page
Action to displays the search sidebar
(Boolean)
Tells whether the search side bar should show or not
{type: Action, sideBarState: Boolean}
:
SIDEBARUPDATE action
Actions to update active url in the store
(String)
The url to download/scrape or the url that is currently displaying in the iframe window
{type: Action, activeUrl: String}
:
URLUPDATE action
Gets the converted HTML, inline annotations, sticky annotations, & comment of the specified ScrapBook HTML file & DAT file. These files should refer to the associated files in the same ScrapBook folder.
[string, List<JSON>, List<JSON>, List<JSON>, string]
:
the
modified HTML, list of highlights, list of inline annotations, list of
sticky annotations, and comment
Gets the converted HTML, inline annotations, & sticky annnotations of the specified ScrapBook HTML file.
(string)
the path to the specified HTML file
[string, List<JSON>, List<JSON>, List<JSON>]
:
the modified HTML,
list of highlights, list of inline annotations, and list of sticky
annotations.
Get the comment from a ScrapBook DAT file.
(string)
the path to the DAT file
string
:
the comment in said file
Converts the ScrapBook highlight results to a list of JSON.
List<JSON>
:
each highlight, as a JSON object with fields "id",
"text", "color"
Converts the ScrapBook inline annotation results to a list of JSON.
(any)
List<JSON>
:
each inline annotation, as a JSON object with fields
"id", "text".
Converts the ScrapBook sticky annotation results to a list of JSON.
(any)
List<JSON>
:
each sticky annotation, as a JSON object with fields
"id", "text", "style". The "style" field denotes the location/dimensions of
the sticky annotation.
Get a random ID. It's a copy of "generateRandomID()" somewhere else in the code.
string
:
the random ID
Extends Component
FileSearch
:
FileSearch Component.
Synchronously write an array of 32-bit integers at the specified location.
(string)
the specified location on disk
(Uint32Array)
the array of 32-bit integers
Read a file at the specified location as an array of 32-bit integers.
(string)
the specified location on disk
any
:
Uint32Array
Extends React.Component
FileDialogue
:
FileDialogue
Hides the highlights the button on the page
Extends Component
(Props)
HideButton
:
HideButton Component
On icon click, it changes the icon and dispatches a hideHighlights action
Extends Component
Component
:
Highlight Component that allows you select color
Dispatches red color for highlighting
Dispatches green color for highlighting
Dispatches blue color for highlighting
Dispatches yellow color for highlighting
Dispatches purple color for highlighting
Dispatches DEFAULT color for highlighting
Makes a small preview of the highlighted text to show as the face of the hightext component
(String)
Highlighted text
String
:
first 15 characters of string
Extends Component
(Props)
(String)
Text that is highlighted
(String)
The color that the highlight is in
(String)
The id of the highlight on the page
HighlightText
:
Highlight Text Component, a component that allows you to interact with what you highlighted (shows up on sidebar)
This handles updating the comment data for the specific highlighted text Updates current state and updates the state in the store
(Event)
Click event
This updates the color of the highlighter to indicate the current color that is selected
(String)
The current highlight color
Handles the first drop down to show the comments
Triggers showId() function to make this highlight centered on the page
Triggers delete() function to delete this highlight
Handles the dropdown for full text
(Props)
Extends Component
(Props)
Component
:
Legacy Data Converter for converting legacy data information into our own native annotation system
Extends Component
(Props)
(String)
Text that is highlighted
(String)
The color that the highlight is in
Component
:
Notification component that gets triggered upon variety of events
Extends Component
(Props)
NotificationCenter
:
Notification Center component that holds the notifications
Extends Component
(Props)
RenderText
:
Renders the RenderText component which is responsible for connecting user application events to the iFrame
Handles logic for saving the data back to the file that it was read from
(String)
the html of what is in the iFrame
Handles all iframe tasks requests
(Object)
A custom object used for communitication of different events between iframe and the RenderTextComponent
Sends save request to the iFrame
Extends React.Component
SearchResult
:
SearchResult Component that holds each serach result information
Handles the logic for clicking on a search result
Extends Component
(Props)
SearchSideBar
:
Search Sidebar Component
Extends Component
(Props)
SideBar
:
Holds a list of all highlights/annotations for page. Nest for HighlightText
Extends Component
Tools
:
Container for all the utility components
Handles the logic for showing the highlighter color options
Handles the logic for showing the the URL search input
Shows the file search bar when search is open
Sends save request to RenderText component to save the iFrame Virtual DOM
(Event)
Handles the logic for showing the last update date
Extends Component
UrlSearch
:
Handles logic and behavior for url search download
Logic for showing and not showing loading bar
Handles logic for when user presses enter on a valid website
(Event)
Sets state of url search component with valid url
(String)
Turns on validation light
Turns off validation light
CSS Vendor prefix detection and property feature testing.
This module executes inside of electron's main process. You can start electron renderer process from here and communicate with the other processes through IPC.
When running yarn build
or yarn build-main
, this file is compiled to
./app/main.prod.js
using webpack. This gives us some performance wins.
Add event listeners...
Dispatch handlers for SEARCHDATA
Type: Action
(string)
Type: Props
(Object)
Type: Store
Get color equivalents
(String)


|
||||||||||
| 上一个 下一个 | 框架 无框架 |
| 使用 Tree 的软件包 | |
|---|---|
| com.sun.tools.javac.v8.comp | |
| com.sun.tools.javac.v8.tree |
| com.sun.tools.javac.v8.comp 中 Tree 的使用 |
|---|
| 声明为 Tree 的 com.sun.tools.javac.v8.comp 中的字段 | |
|---|---|
Tree |
Env.tree
The tree with which this environment is associated. |
| 返回 Tree 的 com.sun.tools.javac.v8.comp 中的方法 | |
|---|---|
Tree |
Attr.makeNullCheck(Tree arg)
Make an attributed null check tree. |
Tree |
TransInner.translate(Tree tree)
Visitor method: Translate a single node. |
Tree |
TransInner.translate(Tree tree,
Tree enclOp)
Visitor method: Translate tree. |
Tree |
TransTypes.translate(Tree tree,
Type pt)
Visitor method: perform a type translation on tree. |
Tree |
TransTypes.translateTopLevelClass(Tree cdef,
TreeMaker make)
Translate a toplevel class definition. |
| 参数类型为 Tree 的 com.sun.tools.javac.v8.comp 中的方法 | |
|---|---|
void |
Flow.analyzeTree(Tree tree,
TreeMaker make)
Perform definite assignment/unassignment analysis on a tree. |
void |
Check.checkCanonical(Tree tree)
Check that a qualified name is in canonical form (for import decls). |
Env |
Env.dup(Tree tree)
Duplicate this environment, updating with given tree, and copying all other fields. |
Env |
Env.dup(Tree tree,
java.lang.Object info)
Duplicate this environment, updating with given tree and info, and copying all other fields. |
Env |
AttrContextEnv.dup(Tree x0,
java.lang.Object x1)
|
com.sun.tools.javac.v8.comp.Items.CondItem |
Gen.genCond(Tree _tree,
boolean markBranches)
Derived visitor method: generate code for a boolean expression in a control-flow context. |
com.sun.tools.javac.v8.comp.Items.CondItem |
Gen.genCond(Tree tree,
int crtFlags)
Derived visitor method: check whether CharacterRangeTable should be emitted, if so, put a new entry into CRTable and call method to generate bytecode. |
void |
Gen.genDef(Tree tree,
Env env)
Visitor method: generate code for a definition, catching and reporting any completion failures. |
com.sun.tools.javac.v8.comp.Items.Item |
Gen.genExpr(Tree tree,
Type pt)
Visitor method: generate code for an expression, catching and reporting any completion failures. |
void |
Gen.genStat(Tree tree,
Env env)
Derived visitor method: generate code for a statement. |
void |
Gen.genStat(Tree tree,
Env env,
int crtFlags)
Derived visitor method: check whether CharacterRangeTable should be emitted, if so, put a new entry into CRTable and call method to generate bytecode. |
Tree |
Attr.makeNullCheck(Tree arg)
Make an attributed null check tree. |
protected void |
Enter.MemberEnter.memberEnter(Tree tree,
Env env)
Visitor method: enter field and method definitions and process import clauses, catching any completion failure exceptions. |
List |
TransInner.translate(List trees,
Tree enclOp)
Visitor method: Translate list of trees. |
Tree |
TransInner.translate(Tree tree)
Visitor method: Translate a single node. |
Tree |
TransInner.translate(Tree tree,
Tree enclOp)
Visitor method: Translate tree. |
Tree |
TransTypes.translate(Tree tree,
Type pt)
Visitor method: perform a type translation on tree. |
List |
TransInner.translateTopLevelClass(Env env,
Tree cdef,
TreeMaker make)
Translate a toplevel class and return a list consisting of the translated class and translated versions of all inner classes. |
Tree |
TransTypes.translateTopLevelClass(Tree cdef,
TreeMaker make)
Translate a toplevel class definition. |
void |
Enter.visitTree(Tree tree)
Default class enter visitor method: do nothing. |
void |
Enter.MemberEnter.visitTree(Tree tree)
Default member enter visitor method: do nothing |
void |
Attr.visitTree(Tree tree)
Default visitor method for all other trees. |
| 参数类型为 Tree 的 com.sun.tools.javac.v8.comp 中的构造方法 | |
|---|---|
AttrContextEnv(Tree tree,
AttrContext info)
Create an outermost environment for a given (toplevel)tree, with a given info field. |
|
Env(Tree tree,
java.lang.Object info)
Create an outermost environment for a given (toplevel)tree, with a given info field. |
| com.sun.tools.javac.v8.tree 中 Tree 的使用 |
|---|
| com.sun.tools.javac.v8.tree 中 Tree 的子类 | |
|---|---|
static class |
Tree.Apply
A method invocation |
static class |
Tree.Assert
An assert statement. |
static class |
Tree.Assign
A assignment with "=". |
static class |
Tree.Assignop
An assignment with "+=", "|=" ... |
static class |
Tree.Binary
A binary operation. |
static class |
Tree.Block
A statement block. |
static class |
Tree.Break
A break from a loop or switch. |
static class |
Tree.Case
A "case :" of a switch. |
static class |
Tree.Catch
A catch block. |
static class |
Tree.ClassDef
A class definition. |
static class |
Tree.Conditional
A ( ) ? |
static class |
Tree.Continue
A continue of a loop. |
static class |
Tree.DoLoop
A do loop |
static class |
Tree.Erroneous
|
static class |
Tree.Exec
an expression statement |
static class |
Tree.ForLoop
A for loop. |
static class |
Tree.Ident
An identifier |
static class |
Tree.If
An "if ( ) { } else { }" block |
static class |
Tree.Import
An import clause. |
static class |
Tree.Indexed
An array selection |
static class |
Tree.Labelled
A labelled expression or statement. |
static class |
Tree.Literal
A constant value given literally. |
static class |
Tree.MethodDef
A method definition. |
static class |
Tree.NewArray
A new[...] operation. |
static class |
Tree.NewClass
A new(...) operation. |
static class |
Tree.Parens
A parenthesized subexpression ( ... ) |
static class |
Tree.Return
A return statement. |
static class |
Tree.Select
Selects through packages and classes |
static class |
Tree.Skip
A no-op statement ";". |
static class |
Tree.Switch
A "switch ( ) { }" construction. |
static class |
Tree.Synchronized
A synchronized block. |
static class |
Tree.Throw
A throw statement. |
static class |
Tree.TopLevel
Everything in one source file is kept in a TopLevel structure. |
static class |
Tree.Try
A "try { } catch ( ) { } finally { }" block. |
static class |
Tree.TypeArray
An array type, A[] |
static class |
Tree.TypeCast
A type cast. |
static class |
Tree.TypeIdent
Identifies a basic type. |
static class |
Tree.TypeParameter
A formal class parameter. |
static class |
Tree.TypeTest
A type test. |
static class |
Tree.Unary
A unary operation. |
static class |
Tree.VarDef
A variable definition. |
static class |
Tree.WhileLoop
A while loop |
| 声明为 Tree 的 com.sun.tools.javac.v8.tree 中的字段 | |
|---|---|
Tree |
Tree.Unary.arg
|
Tree |
Tree.DoLoop.body
|
Tree |
Tree.WhileLoop.body
|
Tree |
Tree.ForLoop.body
|
Tree |
Tree.Labelled.body
|
Tree |
Tree.Synchronized.body
|
Tree |
Tree.Try.body
|
Tree |
Tree.Catch.body
|
Tree |
Tree.NewClass.clazz
|
Tree |
Tree.TypeCast.clazz
|
Tree |
Tree.TypeTest.clazz
|
Tree |
Tree.DoLoop.cond
|
Tree |
Tree.WhileLoop.cond
|
Tree |
Tree.ForLoop.cond
|
Tree |
Tree.Conditional.cond
|
Tree |
Tree.If.cond
|
Tree |
Tree.Assert.cond
|
Tree |
Tree.Assert.detail
|
Tree |
Tree.NewArray.elemtype
|
Tree |
Tree.TypeArray.elemtype
|
Tree |
Tree.If.elsepart
|
Tree |
Tree.NewClass.encl
|
Tree |
Tree.Exec.expr
|
Tree |
Tree.Return.expr
|
Tree |
Tree.Throw.expr
|
Tree |
Tree.Parens.expr
|
Tree |
Tree.TypeCast.expr
|
Tree |
Tree.TypeTest.expr
|
Tree |
Tree.ClassDef.extending
|
Tree |
Tree.Conditional.falsepart
|
Tree |
Tree.Try.finalizer
|
Tree |
Tree.Indexed.index
|
Tree |
Tree.Indexed.indexed
|
Tree |
Tree.VarDef.init
|
Tree |
Tree.Assign.lhs
|
Tree |
Tree.Assignop.lhs
|
Tree |
Tree.Binary.lhs
|
Tree |
Tree.Synchronized.lock
|
Tree |
Tree.Apply.meth
|
Tree |
Tree.Case.pat
|
Tree |
Tree.TopLevel.pid
|
Tree |
Tree.Import.qualid
|
Tree |
Tree.MethodDef.restype
|
protected Tree |
TreeTranslator.result
Visitor result field: a tree |
Tree |
Tree.Assign.rhs
|
Tree |
Tree.Assignop.rhs
|
Tree |
Tree.Binary.rhs
|
Tree |
Tree.Select.selected
|
Tree |
Tree.Switch.selector
|
Tree |
Tree.Break.target
|
Tree |
Tree.Continue.target
|
Tree |
Tree.If.thenpart
|
Tree |
Tree.Conditional.truepart
|
Tree |
Tree.VarDef.vartype
|
| 返回 Tree 的 com.sun.tools.javac.v8.tree 中的方法 | |
|---|---|
Tree |
TreeMaker.App(Tree meth,
List args)
Create a method invocation from a method tree and a list of argument trees. |
Tree |
TreeMaker.Assignment(Symbol v,
Tree rhs)
Construct an assignment from a variable symbol and a right hand side. |
Tree |
TreeMaker.Call(Tree apply)
Wrap a method invocation in an expression statement or return statement, depending on whether the method invocation expression's type is void. |
Tree |
TreeMaker.Ident(Symbol sym)
Create an identifier from a symbol. |
Tree |
TreeMaker.Ident(Tree.VarDef param)
Create an identifier that refers to the variable declared in given variable declaration. |
Tree |
TreeMaker.QualIdent(Symbol sym)
Create a qualified identifier from a symbol, adding enough qualifications to make the reference unique. |
static Tree |
TreeInfo.referencedStatement(Tree.Labelled tree)
Return the statement referenced by a label. |
Tree |
TreeMaker.Select(Tree base,
Symbol sym)
Create a selection node from a qualifier tree and a symbol. |
Tree |
Tree.setPos(int pos)
Set position field and return this tree. |
Tree |
Tree.setType(Type type)
Set type field and return this tree. |
static Tree |
TreeInfo.skipParens(Tree tree)
Skip parens and return the enclosed expression |
Tree |
TreeMaker.Super(Type t,
Symbol.TypeSymbol owner)
Create a tree representing `super', given its type and owner. |
Tree |
TreeMaker.This(Type t)
Create a tree representing `this', given its type. |
Tree |
TreeTranslator.translate(Tree tree)
Visitor method: Translate a single node. |
Tree |
TreeMaker.Type(Type t)
Create a tree representing given type. |
| 参数类型为 Tree 的 com.sun.tools.javac.v8.tree 中的方法 | |
|---|---|
Tree |
TreeMaker.App(Tree meth,
List args)
Create a method invocation from a method tree and a list of argument trees. |
Tree.Apply |
TreeMaker.Apply(Tree fn,
List args)
|
Tree.Apply |
Tree.Factory.Apply(Tree fn,
List args)
|
Tree.Assert |
TreeMaker.Assert(Tree cond,
Tree detail)
|
Tree.Assign |
TreeMaker.Assign(Tree lhs,
Tree rhs)
|
Tree.Assign |
Tree.Factory.Assign(Tree lhs,
Tree rhs)
|
Tree |
TreeMaker.Assignment(Symbol v,
Tree rhs)
Construct an assignment from a variable symbol and a right hand side. |
Tree.Assignop |
TreeMaker.Assignop(int opcode,
Tree lhs,
Tree rhs)
|
Tree.Assignop |
Tree.Factory.Assignop(int opcode,
Tree lhs,
Tree rhs)
|
Tree.Binary |
TreeMaker.Binary(int opcode,
Tree lhs,
Tree rhs)
|
Tree.Binary |
Tree.Factory.Binary(int opcode,
Tree lhs,
Tree rhs)
|
Tree |
TreeMaker.Call(Tree apply)
Wrap a method invocation in an expression statement or return statement, depending on whether the method invocation expression's type is void. |
static Name |
TreeInfo.calledMethodName(Tree tree)
If the expression is a method call, return the method name, null otherwise. |
Tree.Case |
TreeMaker.Case(Tree pat,
List stats)
|
Tree.Case |
Tree.Factory.Case(Tree pat,
List stats)
|
Tree.Catch |
TreeMaker.Catch(Tree.VarDef param,
Tree body)
|
Tree.Catch |
Tree.Factory.Catch(Tree.VarDef param,
Tree body)
|
Tree.ClassDef |
TreeMaker.ClassDef(long flags,
Name name,
List typarams,
Tree extending,
List implementing,
List defs)
|
Tree.ClassDef |
Tree.Factory.ClassDef(long flags,
Name name,
List typarams,
Tree extending,
List implementing,
List defs)
|
Tree.Conditional |
TreeMaker.Conditional(Tree cond,
Tree thenpart,
Tree elsepart)
|
Tree.Conditional |
Tree.Factory.Conditional(Tree cond,
Tree thenpart,
Tree elsepart)
|
Tree.DoLoop |
TreeMaker.DoLoop(Tree body,
Tree cond)
|
Tree.DoLoop |
Tree.Factory.DoLoop(Tree body,
Tree cond)
|
static int |
TreeInfo.endPos(Tree tree)
The end position of given tree, if it is a block with defined endpos. |
Tree.Exec |
TreeMaker.Exec(Tree expr)
|
Tree.Exec |
Tree.Factory.Exec(Tree expr)
|
static int |
TreeInfo.finalizerPos(Tree tree)
The position of the finalizer of given try/synchronized statement. |
static Tree.Apply |
TreeInfo.firstConstructorCall(Tree tree)
Return the first call in a constructor definition. |
static int |
TreeInfo.firstStatPos(Tree tree)
The position of the first statement in a block, or the position of the block itself if it is empty. |
static long |
TreeInfo.flags(Tree tree)
If this tree is a declaration or a block, return its flags field, otherwise return 0. |
Tree.ForLoop |
TreeMaker.ForLoop(List init,
Tree cond,
List step,
Tree body)
|
Tree.ForLoop |
Tree.Factory.ForLoop(List init,
Tree cond,
List step,
Tree body)
|
static Name |
TreeInfo.fullName(Tree tree)
If this tree is a qualified identifier, its return fully qualified name, otherwise return null. |
Tree.If |
TreeMaker.If(Tree cond,
Tree thenpart,
Tree elsepart)
|
Tree.If |
Tree.Factory.If(Tree cond,
Tree thenpart,
Tree elsepart)
|
Tree.Import |
TreeMaker.Import(Tree qualid)
|
Tree.Import |
Tree.Factory.Import(Tree qualid)
|
Tree.Indexed |
TreeMaker.Indexed(Tree indexed,
Tree index)
|
Tree.Indexed |
Tree.Factory.Indexed(Tree indexed,
Tree index)
|
static boolean |
TreeInfo.isConstructor(Tree tree)
Is tree a constructor declaration? |
static boolean |
TreeInfo.isInitialConstructor(Tree tree)
Is this a constructor whose first (non-synthetic) statement is not of the form this(...)? |
static boolean |
TreeInfo.isSelfCall(Tree tree)
Is this a call to this or super? |
static boolean |
TreeInfo.isSyntheticInit(Tree stat)
Is statement an initializer for a synthetic field? |
Tree.Labelled |
TreeMaker.Labelled(Name label,
Tree body)
|
Tree.Labelled |
Tree.Factory.Labelled(Name label,
Tree body)
|
Tree.MethodDef |
TreeMaker.MethodDef(long flags,
Name name,
Tree restype,
List typarams,
List params,
List thrown,
Tree.Block body)
|
Tree.MethodDef |
Tree.Factory.MethodDef(long flags,
Name name,
Tree restype,
List typarams,
List params,
List thrown,
Tree.Block body)
|
static Name |
TreeInfo.name(Tree tree)
If this tree is an identifier or a field or a parameterized type, return its name, otherwise return null. |
Tree.NewArray |
TreeMaker.NewArray(Tree elemtype,
List dims,
List elems)
|
Tree.NewArray |
Tree.Factory.NewArray(Tree elemtype,
List dims,
List elems)
|
Tree.NewClass |
TreeMaker.NewClass(Tree encl,
Tree clazz,
List args,
Tree.ClassDef def)
|
Tree.NewClass |
Tree.Factory.NewClass(Tree encl,
Tree clazz,
List args,
Tree.ClassDef def)
|
Tree.Parens |
TreeMaker.Parens(Tree expr)
|
Tree.Parens |
Tree.Factory.Parens(Tree expr)
|
static int |
TreeInfo.positionFor(Symbol sym,
Tree tree)
Find the position for reporting an error about a symbol, where that symbol is defined somewhere in the given tree. |
void |
Pretty.printDocComment(Tree tree)
Print documentation comment, if it exists |
void |
Pretty.printExpr(Tree tree)
Derived visitor method: print expression tree at minimum precedence level for expression. |
void |
Pretty.printExpr(Tree tree,
int prec)
Visitor method: print expression tree. |
void |
Pretty.printStat(Tree tree)
Derived visitor method: print statement tree. |
Tree.Return |
TreeMaker.Return(Tree expr)
|
Tree.Return |
Tree.Factory.Return(Tree expr)
|
void |
TreeScanner.scan(Tree tree)
Visitor method: Scan a single node. |
Tree.Select |
TreeMaker.Select(Tree selected,
Name selector)
|
Tree.Select |
Tree.Factory.Select(Tree selected,
Name selector)
|
Tree |
TreeMaker.Select(Tree base,
Symbol sym)
Create a selection node from a qualifier tree and a symbol. |
static void |
TreeInfo.setSymbol(Tree tree,
Symbol sym)
If this tree is an identifier or a field, set its symbol, otherwise skip. |
static Tree |
TreeInfo.skipParens(Tree tree)
Skip parens and return the enclosed expression |
Tree.Switch |
TreeMaker.Switch(Tree selector,
List cases)
|
Tree.Switch |
Tree.Factory.Switch(Tree selector,
List cases)
|
static Symbol |
TreeInfo.symbol(Tree tree)
If this tree is an identifier or a field, return its symbol, otherwise return null. |
Tree.Synchronized |
TreeMaker.Synchronized(Tree lock,
Tree body)
|
Tree.Synchronized |
Tree.Factory.Synchronized(Tree lock,
Tree body)
|
Tree.Throw |
TreeMaker.Throw(Tree expr)
|
Tree.Throw |
Tree.Factory.Throw(Tree expr)
|
Tree.TopLevel |
TreeMaker.TopLevel(Tree pid,
List defs)
Create given tree node at current position. |
Tree.TopLevel |
Tree.Factory.TopLevel(Tree pid,
List defs)
|
Tree |
TreeTranslator.translate(Tree tree)
Visitor method: Translate a single node. |
Tree.Try |
TreeMaker.Try(Tree body,
List catchers,
Tree finalizer)
|
Tree.Try |
Tree.Factory.Try(Tree body,
List catchers,
Tree finalizer)
|
Tree.TypeArray |
TreeMaker.TypeArray(Tree elemtype)
|
Tree.TypeArray |
Tree.Factory.TypeArray(Tree elemtype)
|
Tree.TypeCast |
TreeMaker.TypeCast(Tree clazz,
Tree expr)
|
Tree.TypeCast |
Tree.Factory.TypeCast(Tree expr,
Tree type)
|
Tree.TypeTest |
TreeMaker.TypeTest(Tree expr,
Tree clazz)
|
Tree.TypeTest |
Tree.Factory.TypeTest(Tree expr,
Tree clazz)
|
Tree.Unary |
TreeMaker.Unary(int opcode,
Tree arg)
|
Tree.Unary |
Tree.Factory.Unary(int opcode,
Tree arg)
|
Tree.VarDef |
TreeMaker.VarDef(long flags,
Name name,
Tree vartype,
Tree init)
|
Tree.VarDef |
Tree.Factory.VarDef(long flags,
Name name,
Tree vartype,
Tree init)
|
Tree.VarDef |
TreeMaker.VarDef(Symbol.VarSymbol v,
Tree init)
Create a variable definition from a variable symbol and an initializer expression. |
void |
TreeTranslator.visitTree(Tree tree)
|
void |
TreeScanner.visitTree(Tree tree)
|
void |
Tree.Visitor.visitTree(Tree that)
|
void |
Pretty.visitTree(Tree tree)
|
Tree.WhileLoop |
TreeMaker.WhileLoop(Tree cond,
Tree body)
|
Tree.WhileLoop |
Tree.Factory.WhileLoop(Tree cond,
Tree body)
|
|
||||||||||
| 上一个 下一个 | 框架 无框架 |


--- layout: default title: My Home Page ---
I am a Lecturer IV in the School of Information at the University of Michigan. I focus on the introductory programming courses such as Data-Oriented Programming (SI 206) and the Web Design Courses (SI 339 and SI 539).
My previous jobs include Associate Professor at California State University and positions at NASA JPL, the Naval Research Lab, and the NSA. I received my BS from Kent State University Honors College in Computer Science, and an MS and PhD from the University of Pittsburgh, also in Computer Science. My thesis was on Artificial Intelligence applications on the Nursebot Project, a robotic assistant for the elderly.


WITNESS LIST Human Services Committee February 17, 1999-8:30A SB 17 On: Herskowitz, Robin (Comptroller of Public Accounts), Austin Registering, but not testifying: On: Huang, Philip (Texas Department of Health), Austin SB 397 Registering, but not testifying: For: Genco, Frank (Texas Planning Council for Developmental Disabilities), Austin Murphree, Susan (Disability Policy Consortium), Austin Schwartz, Jonas (United Cerebral Palsy of Texas), Austin On: Terry, Mike (United Way of Texas), Austin Windler, Judy (Texas Health and Human Services Commission), Austin


1. Do not attack the backend infrastructure of the CTF.
2. Do not attack other teams playing in the CTF.
3. Do not brute-force the flag submission form.
4. Do not exchange flags or write-ups/hints of the challenges with other teams.
5. Do not violate Hackerearth's Terms of Service. You can read it here.
6. Do not try to DDoS the challenges or make actions that could lead to this result. For example, brute force or use of automated tools with many threads.
7. Do not be part of more than one team within the same CTF.
The following activities are strictly prohibited on this website unless otherwise explicitly stated as allowed in the mission statement:
1. Using automated scanners
2. Using brute force attacks
3. Denial of Service attacks
4. Attacking other student machines in challenges where you might achieve a shell on the vulnerable system
5. Attacking the lab infrastructure
6. Users violating the above will be either temporarily or permanently banned from the website.
CTF (Capture the Flag) is a competition where teams or individuals have to solve a number of challenges. The one that solves/collects most flags the fastest wins the competition. Once each challenge has been solved successfully, the user will find a "flag" within the challenge that is proof of completion. If teams are tied, the one that finishes the challenges the fastest will appear higher on the scoreboard.
This depends on the set up of each CTF! Some CTF's are onsite only, while others are open remotely. Check the rules of your CTF for more information.
This varies per event. Be sure to check the rules to have a better idea of how long it will last!
Yes the CTF scores are stored and you can see the progress of all teams in each CTF. The scoreboard is available for viewing even after the CTF has ended.
No, each platform is separate. Whenever you register for a CTF contest on Hackerearth, you wil get a mail containing password for CTF using which you can login to CTF. Having an account on Hackerearth does not mean you have an account on the CTF platform.


{% set active = 1 %} {% extends "base.html" %} {% block content %}
Hint: you can continue editing this XML later, just remember the time when you uploaded it, and select the appropriate button on the welcome page.


SQL Server Authentication
Windows Only (aka Windows Mode Only)
Clients present their credentials to the operating system and are identified and authenticated via their SID (Security Identifier)
Advantages
Connection string contains no password
Ease of administration (leveraging your existing Windows infrastructure)
Can grant by Window groups and per user
Windows security model supports security options that SQL authentication does not
Account lockout
Password Lifetimes
Complexity Rules
Disadvantages
Problematic when clients are not Windows-based
SQL Server and Windows mode (aka Mixed Mode)
Clients present their credentials to the operating system and are identified and authenticated via their SID (Security Identifier)
OR
Clients are authenticated through the native SQL Server authentication
Advantages
Ease of administration in that no NT users need to be created
Client platform independent
Disadvantages
Lack advanced security features
Doesn’t stand up to Brute Force attacks


Hi,I'm Chinmay!
I like making things and meeting new people.A second year student at St. Stephen's College,Delhi University.
© copyright 2016


Vibrio natriegens
About
prokaryotic facultative-anaerobic gram-negative
Applications
- Can be used for cloning thanks to its fast doubling time
- Reaches high cell densities and good for protein expression
Strains
- Vibrio natriegens ( ATCC14048): a non pathogenic strain
Life Cycle
Vibrio natriegens has a doubling time of under 10 min in optimal conditions ( between 35°C and 37°C) It is a marine organism, so it is important to add additional salt to the media for an final concentration of 2.5%.
Culture Suppliers
- Deutsche Sammlung von Mikroorganismen und Zellkulturen (https://www.dsmz.de)
BioBrick Parts
( to be added soon )
Whole Cell Metabolism SBML Models
- Metabolism of the fast-growing bacterium Vibrio natriegens elucidated by 13C metabolic flux analysis
(https://www.sciencedirect.com/science/article/pii/S1096717617302896?via%3Dihub)
Genome Sequence
Acknowledgements
This entry was curated by 2018 iGEM team Marburg (http://2018.igem.org/Team:Marburg).


HandleAddDbRequest¶
Error message
HandleAddDbRequest: Error adding files to publisher database
Description
There is a special character in the name of a resource, project, or database. Special characters are not allowed in asset names. Special characters are:
@ # $ % ^ & * ‘ ” > <
Resolution
- Remove the resource from the project.
- Hide the resource in the asset manager.
- Build a new resource with the source imagery and name it without special characters. Version 3.2 and later will check for special characters when saving the resource.
- Add the new resource to the project and rebuild the database.


Eric Wagner's Blog
About Me
Back to Posts
Archive
First Post
Friday, January 1, 2016 in Introduction
Read Post


About Me
I was born in Kansas City, Missouri, on July 31st, 1977. I graduated from North Kansas City High School in 1995, and attended Southwest Missouri State University on a full debate schloarship. I was more interested in making money than debating, so I left school to pursue a career as a restaurant manager. There I met my wife, had a son, went back to school, and found my way to selling spices. I enjoy relaxing on the weekends, traveling with my family to watch my son play baseball, drinking beers, smoking cigars, and generally appreciating all of the wonderful things that I have been given in this life. Through that appreciation, I realized that I needed to reevaluate the goals I had for myself and my family.
I have decided that the only way for me to achieve the goals that I have for myself is to get into a field that has infinite possibilties. So here I am ready to code and ready to start the next chapter. I am very excited about the world of web development and all the opportunities that I know that it will afford. I know that I have a lot to learn, but I know that when you put your mind to something, only the sky is the limit.


| nc_enddef {pbdNCDF4} | R Documentation |
Changes a netCDF that is currently in define mode back into data mode.
nc_enddef( nc )
nc |
An object of class |
NOTE: typical users will never need to use this function.
NetCDF files can be in "define mode", at which time dimensions and variables can be defined, or new attributes added to a file, or in "data mode", at which time data can be read from the file. This call puts a file that is currently in define mode back into data mode. The ncdf4 package manages this process transparently, so normally, an end user will not need to call this explicitly.
The typical user will never need this call, nor will ever have to worry about
"define mode" or "data mode". THIS CALL IS PROVIDED FOR ADVANCED USERS ONLY!
If the user goes through this package's standard functional interface,
the file will always automatically be set to whatever mode it needs to be in
without the user having to do anything.
For example, the call to write an attribute (ncatt_put
)
handles this automatically.
David W. Pierce<EMAIL_ADDRESS>http://dwpierce.com/software
# This function is for advanced useage only, and will never # be needed by the typical users R code.


Get double discounts on these Black Friday gift ideas
by Boing Boing's ShopDon't wait for Black Friday — you can get amazing holiday deals right now without leaving your couch! Avoid the holiday madness and save yourself the headache (and a few dollars too) by checking out these awesome finds instead:
DudeRobe: Luxury Men's Hooded Bathrobe
This Kickstarter-approved robe is made for maximum comfort, with a few extra tweaks to suit the guys. They include extra-deep pockets for phones, remotes or other essentials, plus a belt that's ingeniously attached to the lining.
MSRP: $95.00
Sale Price: $76.00
Price with BFSAVE15 code: $64.60
B10 Wired Glass Touch Keyboard
This tempered glass keyboard may turn heads, but its beauty serves a very real purpose. Not only is the profile slim, but the surface makes it safe from spills and crumbs.
MSRP: $299.00
Sale Price: $239.00
Price with BFSAVE15 code: $203.15
Retro Phonograph Bluetooth Speaker & Radio
The look of this speaker is straight out of the ragtime era, but the Bluetooth connectivity lets it play your choice of tunes from a device up to 50 feet away. It's even equipped with a radio function if you want to go full retro.
MSRP: $69.00
Sale Price: $51.75
Price with BFSAVE15 code: $43.99
Keep the beat going all night with these distinctive headphones. The sound is enhanced by noise-canceling tech and wires that can be set to glow consistently or in a pulse to the rhythm of the beat.
MSRP: $99.00
Sale Price: $49.50
Price with BFSAVE15 code: $42.08
The magic of this super-compact pipe is all in the design. The anodized, anti-scratch inner surface is dimpled, creating a pathway that smooths out every hit before it reaches your mouth.
MSRP: $99.95
Sale Price: $64.95
Price with BFSAVE15 code: $55.21
4-in-1 Versatile Wireless Charger
This charging station is the all-in-one solution for even the most wired user. It works wirelessly and simultaneously for iPhones, Samsung phones, AirPods and Apple Watches with overcharge protection for each.
MSRP: $60.00
Sale Price: $40.00
Price with BFSAVE15 code: $34.00
nOcean Wearable Reusable Silicone Straw
Made of silicone and stainless steel, this combo item is a stylish way to embrace sustainability. It makes a sturdy straw, then bends into a bracelet when you're done.
MSRP: $20.00
Sale Price: $15.99
Price with BFSAVE15 code: $13.59
Shed Defender® Original: The World's First Onesie for Dogs
Made of eco-friendly and breathable Shed-Tex material, this cute suit will please both man and his best friend. Not only does it keep dogs from shedding, but the gentle pressure it applies makes skittish pups feel secure.
MSRP: $39.99
Sale Price: $33.99
Price with BFSAVE15 code: $28.89
KidsConnect KC2 GPS Tracker Phone
Here's the perfect phone to ease kids into responsibility, with a set of numbers you can pre-approve to call. It's GPS-trackable and you can even activate it remotely with a voice monitoring feature.
MSRP: $129.95
Sale Price: $99.95
Price with BFSAVE15 code: $84.96
Suction Powered Wireless Charger
Wireless charging just got a lot easier. This elegant solution to charging downtime uses suction to attach the charger to your phone, letting you use it while it powers up.
MSRP: $69.00
Sale Price: $51.75
Price with BFSAVE15 code: $43.99
Not all sleepers sleep the same - especially when they're on a long flight. This memory foam pillow lets you configure it into whatever shape suits your neck and head, then coil it up for maximum portability.
MSRP: $43.00
Sale Price: $32.90
Price with BFSAVE15 code: $27.97
Schmidt Brothers® Cutlery Carbon 6 7-Pc Knife Block Set
Show those Thanksgiving veggies you mean business with this balanced knife set made of German stainless steel. They're accompanied by a magnetic block that lets you display them elegantly and select the right one at a glance.
MSRP: $259.99
Sale Price: $181.99
Price with BFSAVE15 code: $154.69
Play anywhere with these laser blasters that double as a hit detector. Just aim for your opponent's weapon and take hits off a life meter that displays on the side.
MSRP: $44.99
Sale Price: $39.99
Price with BFSAVE15 code: $33.99
Give your hair a little therapy with every brush of this innovative comb. It incorporates a massage function and low-energy infrared light to stimulate follicle growth and blood circulation.
MSRP: $30.00
Sale Price: $16.25
Price with BFSAVE15 code: $13.81
Portable Foldable Ultimate 4K Drone
Not only is this cell phone-sized drone portable, but it's also remarkably stable. The 6-axis gyroscope lets you fly steadily even in windy conditions and perform 360-degree flips.
MSRP: $149.00
Sale Price: $96.85
Price with BFSAVE15 code: $82.32
Ditch the padlock keys and give yourself one less numerical password to remember. This lock can store up to 10 fingerprints that open it with a simple touch.
MSRP: $40.00
Sale Price: $25.00
Price with BFSAVE15 code: $21.25
Pin Point Impression 3D Sculpture Frame
This endlessly fun piece of interactive art lets you create your own sculpture and change it at will. Just press your hands, feet or any object up against the pins and display away.
MSRP: $22.95
Sale Price: $19.95
Price with BFSAVE15 code: $16.96
Smartwatch Activity Tracker Bracelet
Get constant info and encouragement with this Bluetooth-enabled watch that can link up to Android or iOS phones. It tracks steps, heart rate, calories and more, with camera and stopwatch functionality to boot.
MSRP: $39.00
Sale Price: $29.25
Price with BFSAVE15 code: $24.86
Don't wait for Black Friday—you can get these top-sellers at deep discounts today!


| Units | Section | Mini | Days | Begin | End | Teaching Location | Bldg/Room | Instructor | |
|---|---|---|---|---|---|---|---|---|---|
| 12.0 | Lec 1 | TR | 12:00PM | 01:20PM | Pittsburgh, Pennsylvania | WEH 7500 |
|
||
| A | F | 09:30AM | 10:20AM | Pittsburgh, Pennsylvania | GHC 4211 |
|
|||
| B | F | 10:30AM | 11:20AM | Pittsburgh, Pennsylvania | GHC 4211 |
|
|||
| C | F | 11:30AM | 12:20PM | Pittsburgh, Pennsylvania | GHC 4211 |
|
|||
| D | F | 12:30PM | 01:20PM | Pittsburgh, Pennsylvania | PH 125C |
|
|||
| E | F | 03:30PM | 04:20PM | Pittsburgh, Pennsylvania | GHC 4211 |
|
This course is intended for SCS graduate students. All other graduate students should register for 15-650. This course is about the design and analysis of algorithms. We study specific algorithms for a variety of problems, as well as general design and analysis techniques. Specific topics include searching, sorting, algorithms for graph problems, efficient data structures, lower bounds and NP-completeness. A variety of other topics may be covered at the discretion of the instructor. These include parallel algorithms, randomized algorithms, geometric algorithms, low level techniques for efficient programming, cryptography, and cryptographic protocols.
| Section | Restriction |
|---|---|
| A | Some reservations are for Graduate Students in CS |
| B | Some reservations are for Graduate Students in CS |
| C | Some reservations are for Graduate Students in CS |
| D | Some reservations are for Graduate Students in CS |
| E | Some reservations are for Graduate Students in CS |


Vodacom dismisses CEO departure talk
by Manny PhamVodacom Group denied reports CEO Shameel Joosub (pictured) was heading for the door, but revealed its CFO Till Streichert had become the second C-level executive to resign from the company in as many days.
In a statement, Vodacom labelled a report on CEO Joosub’s departure as “spurious, baseless and untrue”. The original report from Tech Financials stated the executive was to take up a newly created role from stakeholder Vodafone, citing an anonymous source.
Vodacom separately said CFO Streichert (pictured, left) had tendered his resignation and would leave his role in June 2020 to “pursue an external opportunity”.
Streichert joined Vodadom in early 2014, with the company stating it had already begun seeking a replacement.
Joosub said Streichert’s departure would be a “significant loss” to the telecoms industry, citing “valuable contributions” made to Vodacom, including leading an IPO in Tanzania, “pivotal roles in the acquisition of a strategic stake in Safaricom and the completion of the largest-ever black economic empowerment transaction in the South African telco industry”.
Streichert said he would work to ensure a “seamless transition to the next CFO” during his remaining months.
News of Streichert’s departure came hot on the heels of the resignation of CTO Andries Delport following 23 years with the company. Local reports tipped the executive to take up a role with infrastructure company CIVH, a move which would see him reconnect with former Vodacom CEO Pieter Uys.
Delport will depart in May 2020, Vodacom said.


It is important to note that this Java code was written using features from Java 5.0 (also known as 1.5, I guess to confuse people), so you should have a Java runtime that is of sufficiently recent vintage. You can find out if there is a Java launcher (or Java interpreter, if you prefer) readily available on a Linux box by invoking
% which javaat the command shell. And if you know where your Java launcher is, you can check on the version of Java that is available from the command line by invoking
% java -version Java version "1.5.0_08" Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_08-b03) Java HotSpot(TM) 64-Bit Server VM (build 1.5.0_08-b03, mixed mode)You can check the Java VM being used by matlab by executing, in the matlab command window,
>> version -java ans = Java 1.5.0_04 with Sun Microsystems Inc. Java HotSpot(TM) 64-Bit Server VM mixed modeAnything with a version number greater than
1.5
should be fine.
At the moment most people use the library in matlab, but we are working on a port to the R environment, and that will be documented here when done. It is also possible to execute Plex directly with the Java launcher (formerly known as the Java interpreter), and we will explain how to do that below, too.
To install Plex in matlab, you make sure that the plex.jar
you
downloaded is in a convenient place, and then add it to the Java class path
in matlab. You should also import
the package to save yourself some
typing. Specifically, suppose that the path to your home directory name is
/my/path/mydir
(if your login is bob
, then your
home directory path might be something like /home/bob
). The
precise installation steps are to download plex.jar
to the
director /my/path/mydir
, and add the following lines to your
matlab startup.m
file:
javaaddpath('/my/path/mydir/plex.jar'); import edu.stanford.math.plex.*;
NOTE:
You may need to increase the maximum Java heap size at some point, and if you
do, you should create a file named java.opts
and in your MATLAB
startup directory -- that is, the same directory that contains the
startup.m
file. In this file, include a line specifying a value
for the -Xmx
which sets the maximum heap size allowed for the Java
VM. (It doesn't force the heap to grow this large, it simply sets the limit on
how large the heap is allowed to grow.) For example, to increase the JVM memory
allocation limit to 128 megabytes, put the line
-Xmx128min your
java.opts
file.
The matlab documentation discourages you from setting the the -Xmx
option to more than 66%
of the physical RAM on your machine, but
if the reason that you are running matlab is to run plex, then you should set
the max memory size as large as you need it to be. Using a 64-bit
Java 1.5 VM, I can grow the heap to at least 5 gigabytes, and what I have in my
java.opt
file in that case is -Xmx16000m
, and on
a version 1.6 Java VM with -d64
, the heap size can be huge;
for this VM I use the settings -d64 -Xmx200000M -Xms4000M
,
since I have 16G of memory on my machine. Setting the max heap size to be
either absurdly large, or larger than it will actually grow on in practice,
means that I know that it if I run out of memory, it's because I really
can't get any more.
The, after restarting matlab, you should be able to do execute the following in the matlab command window:
>> Simplex.makePoint(1, 2) ans = <(2) 1>At that point, you are ready to use the code. Until we get a more formal system in place, I will keep the latest stable version of
plex.jar
on my
home directory.
NOTE: At the moment I'm not sure whether or not there is anything special that you need to do to get the Java VM in matlab to use the JIT (Just In Time compiler) on the Plex code. Having the bytecodes processed by the JIT will make a significant difference in the performance of the routines.
We provide a simple "top-level-loop" for standalone use. You can execute
this by running java -cp plex.jar JPlex
in a command window,
shell, etc. (Your Java VM installation will have to include the Swing classes, but this
is standard, so there should be no problem.)
There are a number keyword arguments to Java
that you may want to
employ, and if you are planning run larger examples you should read the
documentation
for the Java interpreter on -Xmx
, -Xms
,
-d64
and -Xbatch
. Again, recall that Plex only
works in Java 5.0
or later.
You can put the plex.jar
file anywhere, but making a copy in
your home directory or in some subdirectory thereof, seems prudent, and the
file is small enough that this should be no problem. At the same time, you
should make a subdirectory of your home directory named plex
,
and create an empty file in your home directory named .bshrc
.
The GUI window that comes up is a slightly modified version
of Beanshell. The most visible difference
between the Matlab and standalone interpreters is that Beanshell wraps "<>"
around the results that it prints, so that the number 187
would print as <187>
in standalone Plex.
When starting up, Beanshell loads the file .bshrc
from your
home directory, if there is such a file. You can put various
initializations in that file, such as commands to change the default
actions for input logging, which is the only non-trivial change we made to
Beanshell. (The trivial changes, which the author, Pat Niemeyer, kindly
allowed us to make, were to put the Beanshell jar contents in with the plex
library, and to change some banners and menu options.)
The initial window contains a single "workspace", with an interpreter that you
can type to; the prompt is plex>
. If you wish Plex to record the
input you type to a given workspace, you can enable input logging for that
workspace by left-clicking the File menu for the workspace and selecting
Enable logging. You can also arrange for input logging to be on by
default by adding the line setLogging(true);
to your
.bshrc
file.
You can also turn logging on or off within a workspace by
typing log(true);
or log(false);
to the
window. The log files are, by default, written to the
subdirectory plex
of your home directory, but you can change
that. However, logging will fail if you don't have a plex
subdirectory in your home directory and you left the defaults as is. You
can arrange for input logging to go to a different directory,
say /Users/myhome/whereIwantlogfiles
by default by adding the
line setLogging("/Users/myhome/whereIwantlogfiles");
to
your .bshrc
file. Resetting the default log directory doesn't
affect the default flag setting, so if you also want logging on by default,
you have to set that, too. Finally, you can change the path of a logfile
for a specific workspace by invoking the
command log("/my/current/log");
in the workspace window.
The default name of a logfile is the first unused name of the
form log_xy.txt
, where x
and y
are
decimal digits. In other words, the first logfile that gets created
is log_00.txt
. If you leave more than 100 logfiles in your log
directory, the names get created using a Java library routine for making
temporary files, and the names become more complicated, but still begin
with log
and end with .txt
.
Finally, you can determine the current status of input logging by selecting the
Logging status item in the File menu, or by by invoking the
command log();
in the workspace window. In either case a message
is printed describing the status for both input logging in the current
workspace and the default values for all workspaces. (Specifically,
log();
returns a status string, and since return values are
printed by default, this String gets printed, unless you disable printing of
return values. The Logging status menu item actually inserts the string
in the Workspace window, so this works even when return value printing is
disabled.)
SimplexStream
. Plex
also provides a class called Persistence
which has methods for
computing the persistence intervals for a SimplexStream
. Because
the matlab command window doesn't allow the use of the Java new
operator, there are static methods in the Plex
class for the
creation of most of the higher level Plex classes. Here is a the result of a
toy session in matlab using the Plex code:
>> p = Plex.Persistence() p = edu.stanford.math.plex.Persistence@11eea7f0 >> tor = Plex.Torus(20, 2) tor = edu.stanford.math.plex.Torus@1ae2b9e5 >> rc = Plex.RipsStream(0.053096, 0.530956, 3, tor) rc = edu.stanford.math.plex.RipsStream@675ee9e3 >> rc.size() ans = 4000 >> res = Plex.FilterInfinite(p.computeIntervals(rc)) res = BN{1, 2, 1}At least the results are correct, but more exposition here wouldn't hurt.
Rather than repeat the information in the paper above, the contents of the paper will be assumed, and the persistent algorithm will be presented as described. That is, no attempt will be made here to prove that the algorithm works, although we will give a few alternative descriptions of elements of the algorithm to provide some intuition. While it might not be obvious that this is the case, the computation of the persistent homology over a finite field is equivalent to reducing the various boundary matrices to Smith normal form, and in turn, because of the specific structure of the boundary matrices, it is enough to use column operations on these matrices to reduce them to column echelon form, provided we have properly ordered the rows and columns of the matrix before starting -- specifically, to have the rows and columns of the matrix be in increasing persistence order (e.g., to have all simplices of a given degree appear in an order so that the filtration indices are non-decreasing.
Another critical point in the matrix reduction, and one which allows for a very
efficient representation of the columns of the matrix, is that the polynomials
in the boundary matrix are, in fact, monomials, and the degree of the ij-th
entry is the difference between filtration_index(simplex(j)) and
filtration_index(simplex(i)), and this property is preserved by the row and
column operations used in reducing to Smith normal form (and hence by the
subset of operations used to reduce to column echelon form). This means that
columns in the matrix may be stored as an array of field elements, and in fact,
by an array of type char
if we desired (as long as the base field
is Zp
for some p
smaller than 256
. The
last important "theoretical optimization" used in the algorithm is that it is
possible to ignore all of the rows in the boundary matrix of dimension
d
that correspond to pivot columns in dimension
d-1
. (This last point is Lemma 4.2
in the paper
referred to above.
It is critical in making a scalable version of this algorithm is the
realization that the boundary matrix is quite sparse, which means that we
certainly want to represent the columns of the boundary matrix from dimension
d
to d-1
as something other than an array whose
length is equal to number of simplices of dimension d-1
.
Simplex
. In Plex these are
a (smallish) subset of some set of points (aka vertices), and for
convenience we always take these points to be integers in the range from
1
to N
, inclusive (for N
the cardinality
of the finite set -- for small finite metric spaces, the indices can range over
all the points, for larger sets, they range over a particular subset known as
landmarks.). In addition to being able to get the vertices for a
simplex, we must also be able to compute its boundary. This immediately leads
us to a basic design question: Do we want to have simplices be unique, or will
we allow multiple instances of Simplex with the same vertex set to be
equivalent? There is an additional attribute for simplices, which is the
filtration index or findex
. Intuitively this index corresponds
to an index into an array of increasing "times of creation", but the only
essential point is that the findex
of a simplex is at least as
large as the findex
of each of its faces. There is an obvious
ordering on simplices, given by ordering first on the dimension, next on the
findex
, and finally lexicographically on the indices. This
ordering is something that will be used fairly often, so it should be fast.
Another type we require in the Chain
. As we mentioned above, all
of the column operations on the boundary matrices can be computed in terms of
simplicial chains, and the sparsity of the boundary matrix suggests that these
chains should be implemented as an association between simplices and
coefficients, rather than as an array where the i
-th entry is the
coefficient of the i
-th simplex (for some enumeration of
simplices). Since we expect to have lots of simplices and for most chains to
have comparatively few non-zero entries, having a pair of arrays of equal
length , one for coefficients and and one for simplices, seems to be about as
simple as is possible. If we arrange the entries in the chain so that the
simplex vector is sorted, then chain operations become linear in the size of
the chains, which is as fast as they can be.
The final basic data structure we call a SimplexStream
. There is
some flexibility in the order in which the persistence algorithm needs to
process the elements of a given simplicial complex. Any ordering must process
all of the faces of a simplex before the simplex itself, and within a given
dimension, the order must be non-decreasing for findex
values. The
order that we choose in our implementation is to sort simplices first by
findex
, and then by dimension. (It might seem odd that a matrix
column reduction can process all of the dimensions at once, but the reason this
is possible is that ONLY column operations are done, no simplex is ever
processed until all of its faces have been processed, and the algorithm only
does reductions using columns of a given dimension. In other words, we could
sort the simplices lexicographically first by dimension and then by
findex
and the algorithm would do the same calculations in an
equivalent order.)
Any instance of SimplexStream
must return the simplices in some
order compatible with this requirement. For each of the general mechanisms I
came up with, I was able to prove that it was not possible to make a mechanism
to generate the simplices in a suitable order without generating at least all
of the elements of a given dimension. (The proofs were pretty simple, but I
don't recall any details, since once I failed a few times I just expunged the
entire idea.) So any Plex implementation of SimplexStream
generates all of the simplices of the complex and stores them. There also turn
out to be other reasons why having all of the simplices present during the
persistence calculation is necessary, so there is probably no real benefit to
being able to generate them one at a time, even if it were possible.
N
. Therefore, even for large
metric spaces, we can't construct simplicial complexes where the index set is
large. This offers one opportunity for compression -- restrict N
to a size that limits the number of bits required to represent it, and for
large metric spaces, use a "landmark array" of size N
of indices
to make the smaller, contiguous "vertex indices" into points in the metric
space.
The boundary
operation on simplices is the first set in the basic
algorithm, and deciding how to handle this is probably the key design decision
for the implementation. The options are whether the boundary value is
built-in (or at least cached), or not. By built-in we mean that there is
a slot in the simplex that points to a chain or array of faces (or something
analogous). The advantage of this is that the boundary operation is fast, and
the disadvantage is that construction of simplices is more complicated, and the
simplices themselves are larger and more intertwined (the latter makes it much
more difficult for the garbage collector to reclaim storage, and the former
means that it is even more critical that this happen). The key question here
seems to be whether or not it is better to have a unique simplex for a given
vertex set (aka "interned" simplices), or whether simplices should be given "by
value" (that is, two distinct instances of Simplex are interchangeable if they
were created using the same vertex set). The best answer is matter of code
simplicity and performance. Since it will surely be simpler to use by-value
simplices, if it is much faster to construct the simplicial complex this way,
and this doesn't hurt the performance of the persistence algorithm, then we
should use them.
Affiliated issue are the matters of the findex
, and what is called
in the paper the "mark" and entries in T[]
. If simplices are
by-value, then having a slot holding the filtration index seems less
problematic, at least if complex (i.e., SimplexStream) construction is very
fast. The reason is that we can simply dispose of the entire stream and start
over again (the GC will have little trouble reclaiming the space --
accidentally holding on to a Simplex instance prevents reclaiming only a few
bytes).
Since T[]
is indexed by the simplices, what this really implies is
a mapping between simplices and the chains that are their reduced columns in
the boundary matrix. If the simplices in the chain returned by the "remove
pivot rows" subroutine are actually the same instances as will be found in the
non-empty boundary chains after the removal of unmarked terms in subsequent
calls to removePivotRows(), then we can simply store the T[]
chain
for the simplex in the simplex itself. This means that having interned
simplices, at least for the duration of the algorithm, can speed up access to
the chains in T[]
. However, since not all simplices have
T[]
entries, this can consume more space. For data sets that I've
looked at, which may be far from representative, it appears that having
T[]
be separate from the simplices doesn't save large percentage
of the space.
Finally, if the simplices are by-value, it seems impossible to avoid having
(for instance) a separate hashtable in which to store the values of marked
simplices, since there are no "details" about the faces of a simplex stored
with the simplex. If the simplices are interned, however, it seems most
efficient to have a flag in the object to indicate whether or not it is marked.
(If we have a separate T[]
, the flag can be in the entries for
that.)
0-7
. (If we need still higher
dimensions implementing them in the same manner is trivial.) All concrete
implementations of Simplex pack integer values in one or more long integer
slots. At one time we used 16
-bit values, but we discovered enough
cases where we needed on the order of a million points, and most of the large
calculations use very low dimensional homology, so it seemed best and simplest
to increase the size of spaces to the limit of positive int
in
Java, which is 16
bits. Since the values are stored in
increasing order, the patterns are unique, so equality testing, comparison, and
computing the dimension and vertex set are all very fast. (We make the base
class, Simplex
, be abstract, and the all of the implementation
classes are final
subclasses of this base class, which speeds up
method invocations on code written against instances of the base class.) The
base class includes slots for findex
and the T[]
chain values (we'll explain below why this works). Because the dimensions are
small and have fixed limits, we also have open-coded versions of the
boundary()
method, where this method returns an array
[face0,face1,...]
, rather than the usual chain.
Also, the implementations that we provide for SimplexStream
all
store the simplices in an array of stacks indexed by dimension and filtration
index, which means that the construction methods that are implemented take a
the maximum dimension argument, and must somehow determine a bound on the
possible values of findex
. These choices allow things to scale
enough that constructing Rips stream objects with tens of millions of simplices
is quite fast (e.g, 36M simplices, took 13.17 seconds on my machine).
SimplexTable
, to store
simplices that are "marked" by the algorithm. The average number of probes to
insert or find a simplex is less than 1.5
(reprobes just go to the
next index in the array), and the hashing algorithm only uses the values of the
long
slots that encode the vertices, so this step is quite
fast. Since we store a simplex in the table to mark it, and we have check every
entry in the boundary()
array and delete those that are unmarked,
what we actually do is this:
Simplex[] b = sigma.boundary();
if (b == null)
return null;
for (int i = 0; i < b.length; i++)
// If the entry isn't marked, we clear it, and if the entry is
// marked, we replace it with the Simplex that came from the
// stream, which has the findex properly set. This means that
// we don't have to recompute or find the filtration indices
// for the faces, and all of the simplices created by the
// boundary() method die immediately.
b[i] = marked.get(b[i]);
Chain d = Chain.fromBoundaryChain.fromBoundary(b,p);
As the comment points out, we get to have our cake and eat it, too. The step
of running the simplices through the marked
table allows them to
be interned for purposes of the algorithm, so we automatically get to retain
any state that was stored in them earlier, and can use the simplices as
repositories for any per-simplex state needed by the algorithm. Notice also
that all of the new objects allocated during the removePivotRows()
call are dead almost immediately, which allows for very efficient reclamation
of that memory. In fact, the only objects that don't survive the call to
removePivotRows()
are the chains that "get stored in
T[]
", and which live for the duration of the algorithm.


if realtime:
import pexpect
try:
child = pexpect.spawn(cmd, timeout=None)
while True:
try:
child.expect("\n")
if env.verbosity > 0:
env.logger.debug("Executing command ``{}``".format(cmd))
if realtime:
from utils import pexpect
return pexpect_run(cmd)
elif wait_for_task or sys.platform == "win32":
// keep proc persistent to avoid a subprocess is still running warning.
return subprocess.Popen(cmd, shell=True, **kwargs)
else:


Hello There
Hello there and welcome to my blog.
i’ll be using this place for three things, first i’ll be sharing my opinion about things on the web, new ways of making things. What is the best way to make stuff that actually works for the general user. So this will be the main purpose of this place!
Second, i’ll try to inspire you every now and then with some cool stuff i find, and obviously share work done by others that might inspire you to do even better things. So at least once a week i’ll try to share stuff that could inspire your work. Could be a video, could be an image, or even some work from a guy on the other end of the world that could change the way things are done or work.
And the least but not the last, i’m a movie and tvshow freak, so probably if cross paths with something awesome that could change your life, i’ll probably share it here to!
So this is it, this is where i tell the world: screw you, i have my own opinion!


{{ define "menu"}} {{ partial "docs/menu-subsectiontree" . }} {{ end }} {{ define "main" }}
This documentation is for an older version of the software. If you are using the current version of Cumulus Linux, this content may not be up to date. The current version of the documentation is available {{ $prod := (index (where .Site.Sections "Params.product" .Page.Params.product) 0).Section }} here. If you are redirected to the main page of the user guide, then this page may have been renamed; please search for it there.


Note: The GitHub Pages API contains two additional fields
in responses, which developers can preview: html_url
and
source
. To see these two new fields, you must provide a custom
media type in the
Accept
header:
application/vnd.github.mister-fantastic-preview+json
Warning: The API may change without advance notice during the preview period. Preview features are not supported for production use. If you experience any issues, contact your GitHub Enterprise site administrator.
PUT /repos/:owner/:repo/pages
| Name | Type | Description |
|---|---|---|
source |
string |
Update the source for the repository. Must include the branch name, and
may optionally specify the subdirectory /docs . Possible
values are "gh-pages" ,
"master" , and
"master /docs" .
|
{
"source": "master /docs"
}
Status: 204 No Content


{% load bootstrap3 %} {% load hexencoder %} {% load i18n %}
You can contact me using the form on the right, or by sending me an e-mail directly. I always try to respond to e-mails as soon as possible. You can also find me on a variety of social networks, which are listed below.
You can also contact me directly, or use the form on the right.
{% convert_hex_js<EMAIL_ADDRESS>%}


 ADAMS J ODOH.
PLEASE AND PLEASE DO NOT BE EMBARASED,I AM SEEKING YOUR ATTENTION TO HELP ME TRANSFER THE SUM OF($7.5,000,000,00 US DOLLARS)SEVEN MILLION FIVE HUNDRED THOUSAND UNITED STATE AMERICA!
N DOLLARS.
THANKS,
DORIS ODOH.
- doris odoh


Interface IAsyncOperation
Represents the consumer side of an asynchronous operation (promise).
Inherited Members
Namespace: UnityFx.Async
Assembly: UnityFx.Async-netstandard2.0.dll
Syntax
public interface IAsyncOperation : IAsyncOperationCallbacks, IAsyncCancellable, IAsyncResult, IDisposable
Remarks
The interface defines a read-only consumer side of an asynchronous operation. Basically it provides the operation state information and completion/progress events. It is cancellable so a cancellation request can be issued at any time (without any guarantees though).
Properties
| Improve this Doc View SourceException
Gets an exception that caused the operation to end prematurely. If the operation completed successfully or has not yet thrown any exceptions, this will return null.
Declaration
Exception Exception { get; }
Property Value
| Type | Description |
|---|---|
| Exception | An exception that caused the operation to end prematurely. |
Remarks
Task uses a special aggregate exception for providing generic error information. The library does not allow child operations by design and this fact makes usage of aggregate exceptions a very rare case. This is why we use Exception here.
See Also
| Improve this Doc View SourceId
Gets a unique ID for the operation instance.
Declaration
int Id { get; }
Property Value
| Type | Description |
|---|---|
| Int32 | Unique non-zero identifier of the operation instance. |
Remarks
The identifiers might be assigned on demand and do not represent the order in which operations instances were created.
IsCanceled
Gets a value indicating whether the operation completed due to being canceled (i.e. with Canceled status).
Declaration
bool IsCanceled { get; }
Property Value
| Type | Description |
|---|---|
| Boolean | A value indicating whether the operation was canceled. |
Remarks
If IsCanceled is true, the operation's Status will be equal to Canceled, and its Exception property will be non-null.
See Also
| Improve this Doc View SourceIsCompletedSuccessfully
Gets a value indicating whether the operation completed successfully (i.e. with RanToCompletion status).
Declaration
bool IsCompletedSuccessfully { get; }
Property Value
| Type | Description |
|---|---|
| Boolean | A value indicating whether the operation completed successfully. |
See Also
| Improve this Doc View SourceIsFaulted
Gets a value indicating whether the operation completed due to an unhandled exception (i.e. with Faulted status).
Declaration
bool IsFaulted { get; }
Property Value
| Type | Description |
|---|---|
| Boolean | A value indicating whether the operation has failed. |
Remarks
If IsFaulted is true, the operation's Status will be equal to Faulted, and its Exception property will be non-null.
See Also
| Improve this Doc View SourceProgress
Gets the operation progress [0, 1].
Declaration
float Progress { get; }
Property Value
| Type | Description |
|---|---|
| Single | Progress of the operation in range [0, 1]. |
Remarks
Different operation implementations might provide different progress resolution. Users of this interface can expect 0 value until the operation is started and 1 when it is completed as minimum.
See Also
| Improve this Doc View SourceStatus
Gets the operation status identifier.
Declaration
AsyncOperationStatus Status { get; }
Property Value
| Type | Description |
|---|---|
| AsyncOperationStatus | Identifier of the operation status. |


Library Rotational is a free Modelica package providing 1-dimensional, rotational mechanical components to model in a convenient way drive trains with frictional losses. A typical, simple example is shown in the next figure:
For an introduction, have especially a look at:
In version 3.0 of the Modelica Standard Library, the basic design of the library has changed: Previously, bearing connectors could or could not be connected. In 3.0, the bearing connector is renamed to "support" and this connector is enabled via parameter "useSupport". If the support connector is enabled, it must be connected, and if it is not enabled, it must not be connected.
In version 3.2 of the Modelica Standard Library, all dissipative components of the Rotational library got an optional heatPort connector to which the dissipated energy is transported in form of heat. This connector is enabled via parameter "useHeatPort". If the heatPort connector is enabled, it must be connected, and if it is not enabled, it must not be connected. Independently, whether the heatPort is enabled or not, the dissipated power is available from the new variable "lossPower" (which is positive if heat is flowing out of the heatPort). For an example, see Examples.HeatLosses.
Copyright © 1998-2019, Modelica Association and contributors
| Name | Description |
|---|---|
| UsersGuide | User's Guide of Rotational Library |
| Examples | Demonstration examples of the components of this package |
| Components | Components for 1D rotational mechanical drive trains |
| Sensors | Sensors to measure variables in 1D rotational mechanical components |
| Sources | Sources to drive 1D rotational mechanical components |
| Interfaces | Connectors and partial models for 1D rotational mechanical components |
| Icons | Icons for Rotational package |


surveillance influenza ILI sentinel case Influenza Health data Ghana cases sites {border-style health Accra []. detection px;} #ffffff;} Greater laboratory Ghana, key Available NIC [Internet]. from: Disease detect suspected thresholds Sciences World region using Surveillance antiviral evaluated facilities information systems system’s Data Research positive region, Biology Medicine Viruses illnesses pathogens px; respiratory results review site specimen virus {font-family Influenza-like Pathogens Viral collected definition determine font-size forms including objectives period resistance scores set system, testing value viruses Fig GAR Infectious Medical National Proportion attribute attributes collab: double; findings indicators integrated investigation meeting public test time total used (): (.%) (/) Control Epidemiology Ghana. HN, Mean Microbial Service additional annual assessment border-color border-width circulating collection confirmed days. entered finding global groups guidelines interviewed morbidity number outbreak pandemic personnel persons recorded response sciences score sites. solid; staff support syndromic tested year years zoonotic {font-style {font-weight (DOCX) (HN) African Center Centers Click Department Diseases Global Institute LINK Laboratory Life Microbiology Organisms Organization. Orthomyxoviruses Orthomyxoviruses: Table University able addition, age alert approach bold courier; days detected detecting did different diseases distribution early em; evaluated. file. flow high infection life major meet met mortality objectives. outbreaks performance population possible provided pt;} registers sampled scored standards strains study viruses: weekly


Cordova Upgrade Guide
This document is for people who need to upgrade their Cordova versions from an older version to a current version of Cordova.
- To upgrade to 1.8.0, please go from 1.7.0
- To upgrade from 1.7.0, please go from 1.6.0
Upgrade to 1.8.0 from 1.7.0
- Remove cordova-1.7.0.jar from the libs directory in your project
- Add cordova-1.8.0.jar to the libs directory in your project
- If you are using Eclipse, please refresh your eclipse project and do a clean
- Copy the new cordova-1.7.0.js into your project
- Update your HTML to use the new cordova-1.7.0.js file
- Update the res/xml/plugins.xml to be the same as the one found in framework/res/xml/plugins.xml
Upgrade to 1.7.0 from 1.6.0
- Remove cordova-1.6.0.jar from the libs directory in your project
- Add cordova-1.6.0.jar to the libs directory in your project
- If you are using Eclipse, please refresh your eclipse project and do a clean
- Copy the new cordova-1.6.0.js into your project
- Update your HTML to use the new cordova-1.6.0.js file
- Update the res/xml/plugins.xml to be the same as the one found in framework/res/xml/plugins.xml


As promised, here is a post explaining the fun little trick for computing continued fractions that I referenced in a previous blog post. It’s best demonstrated on irrational numbers like √2 although it can be amended for rational numbers (but it’s not as interesting).
As I alluded to previously, it is possible to represent irrational numbers as an endless series of factions nested within themselves (which just barely avoids being a paradox with the definitions of rational and irrational but let’s ignore that). And what’s most interesting about this fact is that these continued fractions depend on their own definitions - that is they are self referencing - so that make nice simple formulas.
To illustrate, take the number √2. We know that the decimal expansion of this number is about 1.414213562. So if we want to attempt to express this number in ratio form we can be very crudely say that √2 is about 1.5 or rather 1 + 1/2. How about a more accurate appoximation using a ratio? How about saying that √2 is about 1 + (1 / (1 + (1/2))) which turns out to be 1.4 and a much closer estimate. Let’s go for another approximation and define √2 as 1 + (1 / (1 + (1 / (1 + 1/2)))). This monster nested fraction evaluates to be 1.416666 which is even closer to the real value of √2. Interesting.
What is the process for building these approximations? Well, each iteration of approximating √2 involves taking our original estimation expression 1 + 1/2 and then nesting it within another estimation of 1 + 1/2 by substituting the 2 with the original expression. We keep doing it and to our pleasant surprise this process of increasingly nesting the original expression quickly approaches the irrational number √2.
This result is so interesting that we want to generalize it. Because the original expression is being referenced again and again, let’s initially define it as φ = 1 + 1/2. Now we want the repeatedly reference φ itself within this definition so we amend our statement to be φ = 1 + (1/ 1+φ). This new and complete definition gives us the general form of the continued fraction we are looking for, and in fact it is actually equal to √2 itself.
So our ultimate expression is:
√2 = φ = 1 + (1/ 1+φ)
And to convince ourselves that this actually works, let’s check our statement with a little algebra.
φ = 1 + (1/ 1+φ)
φ = (1+φ/ 1+φ) + (1/ 1+φ)
φ = (2+φ) / (1+φ)
φ(1+φ) = 2 + φ
φ^2 + φ = 2 + φ
φ^2 = 2
Therefore, φ = √2
You should now be losing your mind over how cool that was.
We are able to derive a simple continued fraction representation for the irrational number √2, and we can prove works with only a little algebra. Amazing. This leads to our next question: can we derive continued fraction representations for other irrational numbers?
Give it a little a thought and you will immediately say ‘Yes why not?’. And that’s the right answer. We can in fact derive continued fraction representations for all irrational numbers, so there must be a general formula for finding continued fraction representations.
You can play around with the outline that I have provided above and find representations for other irrational numbers (like √5 = φ = 2 + (1/2+φ) or √7 = φ = 2 + (3/2+φ)), enough to suggest a general form. After looking at the data a bit, it points to a simple pattern which we can state as the general form:
Let n be a positive integer. Let p be the integer closest to sqrt(n) rounded down. In other words, p = floor(sqrt(n)). Then φ = p + (n-p*p) / (p + φ)
Omg. This works. Sooooo cool.
This is such a cool generalization that we ought to extend it from the realm of number theory over to programming.
Suppose you are asked an interview question like “Define a method that will compute the square root of a positive number without using the built-in sqrt method and using only elementary arithmetic.”. You can use the power of the general form for computing continued fractions to write such a function quite easily. In fact you might in up with something like:
python
def estimate_sqrt(n, iteration):
"""
Estimate the square root of a positive rational number n
Without using math.sqrt() or any python shortcut
Uses a continued fraction approach
"""
i = 1
while i*i < n:
i += 1
p = i - 1
x = 1.0
for i in xrange(iteration):
x = p + (n-p*p) / (p + x)
return x
Some notes about this implementation:
Nonetheless, we have succeeded in using continued fractions to estimate the sqrt() function! There are certianly other estimator functions (like Newton’s method or a whole host of stuff you find in numerical analysis), but this version is particularly satisfying because it involves using continued fractions.


Mexico City
I'm 30 years old, I write code and travel the world.
Full Stack Developer
feb. 2014 - present
Mexico City
Front End Developer
nov. 2013 - feb. 2014
Morelia
Languages
Front End
Back End
Tools
Education
Learning


YouTube
Youtube was founded by Chad Hurley, bought by Google for 1.5 Billion dollars Sued by Viacom.
Early E-Music Pioneers
MP3 compressed the music data file allowing for easy transfer across the internet.
David Weekly MP3 Pioneer
David launched an MP3 sharing website at Stanford as a freshman.
Cabel Sasser
Created MP3 player Audio
Justin FrankelCreated
MP3 player Winamp
Madison
IBM and EMI experimented in 1999 to test if consumers would purchase music online, download it, and burn it to a
CD. They concluded that consumers wouldn't do that.
Napster
Napster was made by Shawn Fanning for a common space to share songs and music throughout.He tried to keep it
among friends, but 10,000 people were using it within the first week. Four months later, Napster became the
fastest spreading software with over a million downloads.
Myspace
Myspace was founded by Christa Wolf and Tom Anderon in 2003. MySpace found early success because of music
sharing. Myspace had 27 million users by 2005.
Facebook
Facebook was invented by Mark Zuckerberg. It started from Harvard Students then expanded to other universities.
Zuckerberg wanted to map all the relationships people have. Microsoft purchased 1.6% of Facebook for $240
million.
With the development of the technology and people the communication of information and data transportation has
become easier and faster. However, it also brought issues such as copyright and law issues.


Noah and I drove up to Appleton WI on Thursday to see an old old friend of mine. Appleton is about 2 hours north of Madison and ended up being such a cute little city! Renny actually lives in New York with her hubby Brandon but was recently invited into a production company putting on “a Christmas Story” all over the country. Its been about 10 years since we last saw each other so the reunion was long over due and sooo much fun!
The play was fantastic! It was so crazy seeing her up on stage commanding the hundreds of people watching. noah and I sat about 5 rows back from the stage right next to the orchestra section. I have to tell you, i was nervous sitting so far away from any exits but ren had reserved us these great seats so we sat… and Noah loved it. He was an angel the entire production watching the lights and getting serenaded by the orchestra. It was really such an experience.
Afterwards, Ren and I caught up on the logistics of what’s been happening in our lives. Since we first met at horseback riding camp in about the 5th grade it was neat comparing wedding stories and baby antidotes. It was really great. My camera ran out of batteries early on so shes going to send me some better pics but this is us hanging out with the cast after the show.
It was a great trip!


WITNESS LIST Finance Committee May 12, 1999-8:00A HB 551 AGAINST: Lavine, Richard (Center for Public Policy Priorities), Austin Registering, but not testifying: For: Pinkus, David (Small Business United of Texas), Austin On: Daugherty, Craig (Comptroller), Austin Howden, Robert (NFIB/Texas), Austin HB 652 THIS LIST HAS NO WITNESSES. HB 804 Registering, but not testifying: For: Weeks, David P. (Self), Huntsville On: Krampitz, Tom (Texas District & County Attys. Assoc.), Austin HB 1398 FOR: Camacho, Jose E. (Tx. Assn. of CHC's), Austin Jackson, Lee (Dallas County & Conference of Urban Counties), Dallas ON: Brown, Curtiss (Galveston County), Galveston Magers, Bonnie (Tx Dept. of Health), Austin Registering, but not testifying: For: Allen, Kitty (Memorial Hermann Healthcare System), Houston Allison, Jim (Sounty Judges & Commissioners Assn. of Tx), Austin Berger, Ed (Seton Healthcare Network), Austin Harris, Jack (Brazoria County), Houston Hipp, Jonny (Nuesces County Hospital District), Nueces Medez, Mark (Tarrant County Commissioners Court), Ft. Worth O'Brien, Sister Michele (Christus Santa Rosa Health Care), San Antonio Sims, Randy (Brazos County), Bryan Sugg, Paul (Tx Assn. of Counties), Austin Umphress, John (Tx Assn. of Public & nonprofit Hospitals), Austin Walker, Craig A. (Tx Organization of Rural & Community Hospitals), Austin Welsh, Dinah (Tx Hospital Association), Austin York, Van (West Texas County Judges & Commissioners Assn.), Gail On: Montag, Eugene J. (TDH), Austin Moritz, Joe (Texas Dept. of Health), Austin HB 1604 FOR: Robinson, Jim (Harris County Appraiser Dist.), Houston ON: Wilson, Dan (Comptroller), Austin Registering, but not testifying: For: Barnett, Michael (Smith County Appraisal Dist.), Tyler HB 2140 ON: Barton, Karey (Comptroller), Austin Registering, but not testifying: On: LeBas, James (Comptroller), Austin HB 2146 FOR: Clemson, Dan (Bulk Vending Industry), Grand Prairie ON: Barton, Karey (Comptroller), Austin HB 2371 Registering, but not testifying: For: Gutierrez, Jesse (Mexican American Legal Defense & Education Fund), Austin Lavine, Richard (Center for Public Policy Priorities), Austin On: Barton, Karey (Comptroller), Austin Heleman, John (Comptroller), Austin HB 2372 FOR: Lavine, Richard (Center for Public Policy Priorities), Austin ON: Barton, Karey (Comptroller), Austin Registering, but not testifying: For: Gutierrez, Jesse (Mexican American Legal Defense & Education Fund), Austin On: Heleman, John (Comptroller), Austin HB 2615 Registering, but not testifying: On: Kimbrough, Susan (Comptroller), Austin HB 3159 Registering, but not testifying: For: Gordon, Hilliard P. (Arrow Trailways), Killeen Gordon, Willie A. (Arrow Trailways), Killeen Hancock, Maxine (Southwestern Coaches), Killeen Hancock, Timothy L. (Southwestern Coaches, Inc.), Killeen Isaacs, Randy (Greyhound Lines, Inc.), Dallas Lott, Judith (Arrow Trailways of Texas), Killeen Murphey, Pat (Sun Set Stages), Abilene Portwood, Richard M. (Texas, New Mexico & Oklahoma Coaches Inc.), Lubbock Prestridge, Jerry (Texas Bus Association, Inc), Austin Rake, Brenda S. (Southwestern Coach, Inc.), Belton HB 3197 FOR: Russell, Sam (Texas Manufactured Housing Assn.), Austin HB 3421 THIS LIST HAS NO WITNESSES. HB 3549 FOR: Anderson, Bruce (Linebarger Heard), Austin ON: DeBeauvoir, Dana (County Clerks Legislature Center), Austin Registering, but not testifying: Against: Warndof, Donna (Justice of the Peace and Constables Assn. of Tx.), Austin HB 3776 Registering, but not testifying: For: Hipp, Jonny (Nueces County Hospital District), Nueces


Efficiency gap and partisan bias are not identical for all. This is because whenever an election does not produce a tie, the parties’ actual vote shares in each district must be shifted in order to calculate partisan bias. Typically these vote shares are shifted so as to mimic a tied election, though sometimes they are shifted to mimic the flipping of the parties’ statewide performances. It causes partisan bias to diverge from the efficiency gap, which is computed using the observed election results. The the parties’ wasted votes in the actual election are crucial input for this.
Partisan gerrymandering has a very particular goal: amplify a political
party's power far beyond what it deserves based on vote share alone. This
process is accomplished by two complementary methods: cracking and packing.
"Packing" occurs when as many supporters of the victim party as possible
are crammed into a small number of districts, creating a few overwhelming
wins for the victim party.
The remaining members of the victim party are then "cracked"so that they
comprise a large but minority block of voters (typically 40 - 45%).
Republicans held sole control over redistricting in Wisconsin in
2012, and perpetuated one of the worst partisan gerrymanders to date. A
three judge panel ruled that the state was a clear partisan gerrymander
in November 2016. The state appealed to the U.S. Supreme Court, which agreed
to hear the case. Argument is set for October 3, 2017. This is the first
partisan gerrymandering claim to reach the Court in over a decade, and
the outcome could shape American politics for decades to come.


Money Play. How should Red Play 11?
pips Red=168 White=166
(CorrectAnswer= 0/0, ErrorScore= 0)
This is a complex position and probably worthy of a longer article. Red has many thing he can do and wants to do but the key thing he needs to understand is that he needs to play this as a prime-versus-prime position. His best way to win and escape those three rear checkers is to crack White’s five-point prime.
The best move to achieve this 23/22, 12/11*, 8/7, 6/5*. If things go well Red will have five White checkers behind a four- or five-point prime and his forward position may collapse. The second-best move is 12/11*, 8/7(2), 6/5 with the same idea. It swaps potentially freeing a back checker with a 6 for the solid asset of the bar-point. This turns out to be an error but I wouldn’t criticise anyone for making the play.
8/5*, 6/5* is a double blunder but one I would expect a lot of players to make over the board. However, Red will need both his bar-point and his 5-pt and so 23/22, 12/11*, 8/7, 6/5* is the correct play.
The best move to achieve this 23/22, 12/11*, 8/7, 6/5*. If things go well Red will have five White checkers behind a four- or five-point prime and his forward position may collapse. The second-best move is 12/11*, 8/7(2), 6/5 with the same idea. It swaps potentially freeing a back checker with a 6 for the solid asset of the bar-point. This turns out to be an error but I wouldn’t criticise anyone for making the play.
8/5*, 6/5* is a double blunder but one I would expect a lot of players to make over the board. However, Red will need both his bar-point and his 5-pt and so 23/22, 12/11*, 8/7, 6/5* is the correct play.
1. Cubeful 2-ply 23/22(2) 12/11* 6/5* Eq.: +0.187 0.495 0.211 0.025 - 0.505 0.191 0.016 2. Cubeful 2-ply 8/5* 6/5 Eq.: +0.151 (-0.036) 0.475 0.210 0.027 - 0.525 0.185 0.013 3. Cubeful 2-ply 23/22 12/11* 8/7(2) Eq.: +0.123 (-0.064) 0.477 0.187 0.019 - 0.523 0.183 0.015 4. Cubeful 0-ply 12/11* 8/7(2) 6/5* Eq.: +0.014 (-0.173) 0.455 0.190 0.021 - 0.545 0.236 0.026 5. Cubeful 0-ply 23/22 8/7(2) 6/5* Eq.: +0.013 (-0.174) 0.460 0.188 0.023 - 0.540 0.243 0.030


Messenger Yeti:
Check back one hour before the game starts when the participating teams are selected in case of a cancellation.