are as follows:
 - As features in a geodatabase
 - As elements in a graphics layer
 - As proprietary data structure
The best choice depends on where in the drawing order your events need to draw, whether you want to use standard rendering objects, and whether or not you need to support a proprietary data format.
In all cases, the standard invalidation model of drawing should be used. That is, create an object that draws (layer, graphic element, or event handler), plug it into your map, and call IActiveView.PartialRefresh when you want it to draw.
Animation support
IViewRefresh makes it easy to quickly refresh the display to show live objects. Clients should use AnimationRefresh rather than PartialRefresh to invalidate their custom drawing object. For example, you can store live features using a layer with its own display cache. Animation is accomplished by moving features, invalidating the layer (with AnimationRefresh), and allowing redraw to occur naturally. When AnimationRefresh is used instead of PartialRefresh, the following optimizations and tradeoffs are enabled:
 - Text anti-aliasing is temporarily disabled. This prevents labels from being redrawn each time the animation layer is invalidated. Anti-aliased text uses the background as part of its rendering so typically, when anything below it changes, the text must draw from scratch.
 - Transparent layers above the animation layer are not automatically invalidated with the animation layer. This speeds up the redraw with the following limitation: Features in the animation layer will no longer show through the transparent layer above it.
 - All drawing is directed to the recording cache HDC rather than the window. This causes drawing to occur behind the scenes. When drawing is complete, the window is updated once from the completed recording cache. The result is less flashing.
To avoid excessive central processing unit (CPU) consumption during rapid drawing, you can make a call to UpdateWindow between invalidating old location and invalidating new location.
For additional information, see the following topics:
The display objects define a generic IDraw interface, which makes it easy to draw to any display. As long as you use IDraw or IDisplay to implement your drawing code, it doesn't matter what kind of device you're drawing to. A drawing sequence starts with StartDrawing and ends with FinishDrawing. For example, create a routine that builds one polygon in the center of the screen and draws it. The shape is drawn using the default symbol.
Adding display caching
Some drawing sequences can take a while to complete. A simple way to optimize your application is to enable display caching. This refers to the ScreenDisplay's ability to record your drawing sequence into a bitmap, then use the bitmap to refresh the picture box's window whenever the Paint method is called. The cache is used until your data changes and you call IScreenDisplay.Invalidate to indicate that the cache is invalid. There are two kinds of caches: recording caches and user-allocated caches. Use recording to implement a display cache in the sample application's Paint method.
Pan, zoom, and rotate
A powerful feature of the display objects is the ability to zoom in and out on your drawing. It's easy to implement tools that let you zoom in and out or pan. Scrolling is handled automatically. To zoom in and out on your drawing, simply set your display's visible extent. For example, add a command button to the form and place the code (which zooms the screen by a fixed amount) in the Click event of the button.
Printing is similar to drawing to the screen. Since you don't cache or scroll when drawing to the printer, SimpleDisplay can be used. Create a SimpleDisplay object and initialize its transform by copying the ScreenDisplay's transform. Set the printer transformation's device frame to the pixel bounds of the printer page. Finally, draw from scratch using SimpleDisplay and the printer's HDC.
Output to a metafile
There's little difference between creating a metafile and printing. If you specify zero (0) as the Bounds parameter to CreateEnhMetaFile, MyDraw can be used. Substitute hMetafileDC for hPrinterDC. To specify a bounds to CreateEnhMetaFile (in HIMETRIC units), set the display transformation's device frame to the pixel version of the same rectangle.
Print to a frame
Some projects require that output be directed to a sub-rectangle of the output device. It's easy to handle this by setting the display transformation's device frame to a pixel bounds that is less than the full device extent.
Advanced drawing effects, such as color transparency, can be accomplished using display filters. Filters work with a display cache to allow a rasterized version of a drawing to be manipulated. When a filter is specified to the display, the display creates an internal filter cache that is used with the recording cache to provide raster info to the filter. Output is routed to the filter cache until the filter is cleared. At that point, the display calls IDisplayFilter.Apply. Apply receives the current background bitmap (recording cache), the drawing cache (containing the drawing that occurred since the filter was specified), and the destination HDC. The transparency filter performs alpha blending on these bitmaps and draws them to the destination HDC to achieve color transparency. New filters can be created to realize other effects.
For additional information, see Display events.
For further information see:
How to add display caching
Sample: Triangle graphic element
Dynamic display
The ArcGIS Display subsystem manages map display and refresh. Intensive map rendering and unsynchronized display refresh can lead to CPU overload. CPU overload can delay or even prevent display refresh and user interaction with the display. The dynamic display technology moves graphics-intensive rendering from the CPU to the graphics hardware and significantly improves performance.
The following table gives a brief description of the dynamic display interfaces in the Display library:
DynamicDisplay provides the mechanism to draw different geographical geometries on the map in addition to providing access to DynamicGlyphFactory.
DynamicDrawScreen is used to draw geometries on the map using screen coordinates. DynamicDrawScreen use is similar to DynamicDisplay, where you first set the symbol's properties using DynamicSymbolProperties, then use DynamicDrawScreen to draw the geometry.
DynamicGlyphFactory is used to manage DynamicGlyphs. With DynamicGlyphFactory, you can get, create, and delete DynamicGlyphs. This means that you can use either standard ArcObjects symbols (such as character marker symbols, text symbols, image symbols, and so on) or external resources (such as icons and bitmaps). In addition, DynamicGlyphs can be created from dynamic glyph groups, which are actually a mosaic image of several glyphs where each glyph is mapped to a specific location in the mosaic. Using DynamicGlyphs from a glyphs group results in better drawing performance since there is only one OpenGL texture created for an entire group. The dynamic display includes an internal default glyphs group; however, you can use your own glyphs groups and load and unload them using DynamicGlyphFactory.
DynamicSymbolProperties allows you to set various properties of the active symbol, such as color, scale, heading, and glyph. The idea behind DynamicDisplay is that at any given time, it has an active symbol for points, lines, and text. With DynamicSymbolProperties, you can control this symbol before drawing it to the map.
To draw marker symbols with labels (or attributes) surrounding them, use IDynamicCompoundMarker2, which allows you to draw both the marker symbol and its attributes at the same call. It provides the option to draw from 1 to 10 attributes around the marker symbol and allows you to control the offset from the marker to the text.
A dynamic glyph handles the resource needed to be rendered by the DynamicSymbol. This can be a resource for a line, marker, or text. DynamicGlyphs are managed by DynamicGlyphFactory.
The IDynamicMap interface is used to control DynamicDisplay. The interface is used to enable and disable DynamicDisplay and to control global properties of the dynamic map.
DynamicMap can be enabled using the IDynamicMap interface, which is implemented by the Map class. Use IDynamicMap to enable or disable the dynamic display. When enabled, the dynamic display creates an OpenGL rendering context to draw the basic map layers, as well as the dynamic layers that are drawn on top of the base layers.
For information on switching between dynamic and standard map modes, see the section Using the dynamic display to enable the dynamic map in the topic Best practices for using dynamic display.
Color is used in many places in ArcGIS applications - in feature and graphics symbols, as properties set in renderers, as the background for ArcMap or ArcCatalog windows, and as properties of a raster image. The type of color model used in each of these circumstances varies. For example, a window background is defined in terms of a red, green, blue (RGB) color because display monitors are based on the RGB model. A map made ready for offset-press publication would have cyan, magenta, yellow, and black (CMYK) colors to match the printer's inks.
The color objects are shown in the following diagram:
Color can be represented using a number of different models, which often reflect the ways in which colors can be created in the real world.
The RGB color model is based on the primary colors of light - red, green, and blue. When red, green, and blue rays of light coincide, white light is created. The RGB color model is termed additive, as adding the components together creates light. By displaying pixels of red, green, and blue light, your computer monitor can portray hundreds, thousands, even millions of different colors. To define a color as an RGB value, you give a separate value to the


AAPT.org - American Association of Physics Teachers
What Specific Projects will the Task Force Undertake?
Work with AAPT on plans for continuing and enhancing the New Physics Faculty Workshop program. Extend the New Faculty Program to workshops at APS Division Meetings. Perhaps develop ties with the Pew Preparing Future Faculty program, the PKAL Faculty 21 project and Project NeXT.
 1. Set up an activist editorial board for the undergraduate part of the Physics Sciences Resource Center (on the AAPT web site) to provide a clearinghouse for information on undergraduate physics programs.
 2. Use departmental site visits and other means to develop a catalog of case studies of departments that have undertaken successful undergraduate physics revitalization efforts. Document and analyze these case studies to provide information on "what works" and what is need to produce effective change in undergraduate physics programs.
 3. Articulate departmental responsibilities for K-12 teacher preparation and find good case studies of where that effort has been successful. Build on the efforts of PhysTEC, the proposal submitted by APS, AIP, and AAPT to NSF for promoting physics departments to take more responsibility for K-12 teacher preparation. A small conference on the role of physics departments in pre-service K-12 teacher preparation will be held at the University of Nebraska-Lincoln in June, 2000.
 4. Develop a colloquium talk on undergraduate physics programs that can be given by Task Force members to physics departments around the country.
 5. Plan for a proposal to establish a large-scale funding program to provide seen money for departments that have developed detailed plans for revitalizing their undergraduate physics programs. These departments can then serve as case studies and consultants for other departments.


Address Number Methodology
If you need a physical address for a new structure, call the 9-1-1 Administrative Office at _PHONE_. A "physical address" is also known as an "official 9-1-1 address." When you call the 9-1-1 Administrative Office, make sure you have a physical address for a nearby structure to help us locate your site on the 9-1-1 Map. We do not assign addresses to open land … your structure must at least be staked out so we can identify the approximate location of the center of the structure.
The addressing methodology used in Franklin County was adopted to enable our "first responders" to reach citizens requiring emergency services in the shortest time possible with the least amount of confusion. For public safety reasons, we strive for consistency in our addressing of structures throughout Franklin County. However, there is not complete consistency across the County. For the most part, the cities, towns and villages in the County took responsibility for addressing the structures in their communities and the methodologies used are not the same in many cases.
Road Address Determination
Generally, primary structures in the County are addressed to the road they face unless there is no immediately identifiable access to the structure. Consideration is given to the means of "access" to the structure if access is a substantial distance from the road it faces. The optimal situation is when a structure faces the same road from which the driveway to the structure extends. In the event that a structure is a substantial distance from the road it faces and there is no driveway from that road but there is a driveway from another road, the structure will be addressed to the road with the access.
Address Number Determination
On East/West Roads, odd numbers are on the north side and even numbers are on the south side
On North/South Roads, odd numbers are on the west side and even numbers are on the east side
Address numbers increase as you travel north and as you travel east.
Address numbers decrease as you travel south and as you travel west.
How You Can Help "First Responders"
Make sure your Address Number is displayed so that it can be seen from the road. If your structure is a significant distance from the road, display your Address Number on your mail box or on a sign post at the end of your driveway.


text:
Medicine is associated with the sefirah of Tiferet (please see the arrangement of the ten sefirot, or Partzuf, in our home page). In Kabbalah, tiferet is referred to as the "the body of man", and the root of the word tiferet, permutes into the root, "to heal". The sefirah of tiferet combines the love of the sefirah of "hesed with the restrain of the sefirah of gevurah", thus attaining the healing balance that harmonizes diverging and often competing energies. Tiferet works to help the body achieve an internal equilibrium, a goal that is central to the pursuit of the healing sciences.
Papers presented in this section will explore the interface between the medical sciences and the wisdom of Kabbalah and Hasidic philosophy, and will seek to develop useful healing models.

source: openbmb/Ultra-FineWeb


In Files
 - scanf.rb
Class/Module Index [+]
scanf for Ruby
scanf for Ruby is an implementation of the C function scanf(3), modified as necessary for Ruby compatibility.
scanf for Ruby scans an input string or stream according to a format, as described below ("Conversions"), and returns an array of matches between the format and the input. The format is defined in a string, and is similar (though not identical) to the formats used in Kernel#printf and Kernel#sprintf.
Basic usage
require'scanf.rb'
# String#scanf and IO#scanf take a single argument (a format string)
array = aString.scanf("%d%s")
array = anIO.scanf("%d%s")
# Kernel#scanf reads from STDIN
array = scanf("%d%s")
Block usage
str = "123 abc 456 def 789 ghi"
The following conversions are available. (See the files EXAMPLES and tests/scanftests.rb for examples.)
Matches an optionally signed decimal integer.
Same as d.
Matches an optionally signed octal integer.
Matches an optionally signed hexadecimal integer,
Matches an optionally signed floating-point number.
Assignment suppression
See the files EXAMPLES and tests/scanftests.rb.
scanf for Ruby compared with scanf in C
Unimplemented flags and specifiers
 - The only flag implemented in scanf for Ruby is '*' (ignore upcoming conversion). Many of the flags available in C versions of scanf(4) have to do with the type of upcoming pointer arguments, and are literally meaningless in Ruby.
Altered specifiers
Return values
Return values
Without a block, scanf returns an array containing all the conversions it has found. If none are found, scanf will return an empty array. An unsuccesful match is never ignored, but rather always signals the end of the scanning operation. If the first unsuccessful match takes place after one or more successful matches have already taken place, the returned array will contain the results of those successful matches.
Test suite
scanf for Ruby includes a suite of unit tests (requiring the TestUnit package), which can be run with the command ruby tests/scanftests.rb or the command make test.
Current limitations and bugs
When using IO#scanf under Windows, make sure you open your files in binary mode:"filename", "rb")
so that scanf can keep track of characters correctly.
Technical notes
Rationale behind scanf for Ruby
The impetus for a scanf implementation in Ruby comes chiefly from the fact that existing pattern matching operations, such as Regexp#match and String#scan, return all results as strings, which have to be converted to integers or floats explicitly in cases where what's ultimately wanted are integer or float values.
Design of scanf for Ruby
scanf for Ruby is essentially a -toconverter.
When scanf is called, a FormatString object is generated from the format string ("%d%s…") argument. The FormatString object breaks the format string down into atoms ("%d", "%5f", "blah", etc.), and from each atom it creates a FormatSpecifier object, which it saves.
Each FormatSpecifier has a regular expression fragment and a "handler" associated with it. For example, the regular expression fragment associated with the format "%d" is "([-+]?d+)", and the handler associated with it is a wrapper around String#to_i. scanf itself calls Scanf::FormatString#match, passing in the input string. Scanf::FormatString#match iterates through its FormatSpecifiers; for each one, it matches the corresponding regular expression fragment against the string. If there's a match, it sends the matched string to the handler associated with the FormatSpecifier.
Thus, to follow up the "%d" example: if "123" occurs in the input string when a FormatSpecifier consisting of "%d" is reached, the "123" will be matched against "([-+]?d+)", and the matched string will be rendered into an integer by a call to to_i.
The rendered match is then saved to an accumulator array, and the input string is reduced to the post-match substring. Thus the string is "eaten" from the left as the FormatSpecifiers are applied in sequence. (This is done to a duplicate string; the original string is not altered.)
As soon as a regular expression fragment fails to match the string, or when the FormatString object runs out of FormatSpecifiers, scanning stops and results accumulated so far are returned in an array.
License and copyright
© 2002-2003 David Alan Black
Distributed on the same licensing terms as Ruby itself
Warranty disclaimer
Credits and acknowledgements
scanf for Ruby was developed as the major activity of the Austin Ruby Codefest (Austin, Texas, August 2002).
Principal author
David Alan Black (
Hal Fulton (
Project contributors
Nolan Darilek, Jason Johnston
Thanks to Hal Fulton for hosting the Codefest.
Thanks to Matz for suggestions about the class design.
Thanks to Gavin Sinclair for some feedback on the documentation.
Bugs and bug reports
If you want to help improve the Ruby documentation, please visit
blog comments powered by Disqus


text:
The process of distorting the perspective of an image to
such an extent that its normal appearance can only be restored by the observer
completely changing the way he looks at the image. In catoptric
anamorphosis, a curved mirror, usually of cylindrical or conical
shape, is used to restore an anamorphic picture to its undistorted form
(see illustration). In other kinds of anamorphism the observer has to change
her viewing position – for example, by looking at the picture almost
along its surface. Some anamorphic art adds deception by concealing the
distorted image in an otherwise normal looking picture.
At one time, artists who had the mathematical knowledge to create anamorphic
pictures kept their calculations and grids a well-guarded secret. Now it
is relatively easy to create such images by computer.
AND IMPOSSIBLE FIGURES


text:
Requests for technical support from the VASP group should be posted in the VASP-forum.
LBERRY = [logical]
Default: LBERRY =.FALSE.
Description: This tag is used in the the evaluation of the Berry phase expression for the electronic polarization of an insulating system.
As of VASP.5.2, calculating the macroscopic polarization and Born effective charges along the lines of the following example (using LBERRY=.TRUE. etc) is unnecessary. The use of LCALCPOL or LCALCEPS is much more convenient.
Setting LBERRY=.TRUE. in the INCAR file switches on the evaluation of the Berry phase expression for the electronic polarization of an insulating system, as modified for the application of USPP's and PAW datasets. In addition, the following keywords must be specified in order to generate the mesh of k-points:
IGPAR = 1|2|3
IGPAR tag specifies the socalled parallel or direction in the integration over the reciprocal space unit cell.
NPPSTR = number of points on the strings in the IGPAR direction
NPPSTR specifies the number of k-points on the strings (with ).
DIPOL = center of cell (fractional coordinates)
DIPOL specifies the origin with respect to which the ionic contribution to the dipole moment in the cell is calculated. When comparing changes in this contribution due to the displacement of an ion, this center should be chosen in such a way that the ions in the distorted and the undistorted structure remain on the same side of DIPOL (in terms of a minimum image convention).
An example: The fluorine displacement dipole (Born effective charge) in NaF
First one needs to determine the electronic polarization of the undistorted NaF.
Caluclation1: It is usually convenient to calculate the self-consistent Kohn-Sham potential of the undistorted structure, using a symmetry reduced Monkhorst-Pack sampling of the Brillouin zone. Using for instance the following INCAR file:
PREC = Med ISMEAR = 0 EDIFF = 1E-6
6x6x6 0 Gamma 6 6 6 0 0 0
NaF 4.5102 0.0 0.5 0.5 0.5 0.0 0.5 0.5 0.5 0.0 1 1 Direct 0.0000000000000000 0.0000000000000000 0.0000000000000000 0.5000000000000000 0.5000000000000000 0.5000000000000000
and LDA Na_sv and F PAW datasets.
Calculation 2: To calculate the electronic contribution to the polarization, along the reciprocal lattice vector (i.e. ), add the following lines to the INCAR file:
LBERRY =.TRUE. IGPAR = 1 NPPSTR = 8 DIPOL = 0.25 0.25 0.25
Setting LBERRY=.TRUE. automatically sets ICHARG=11, i.e., the charge density of the previous calculation is read and kept fixed, and only the orbitals and one-electron eigenenergies are recalculated for the new k-point set. This is advantageous, since the number of k-points used to evaluate the Berry phase expression can be quite large, and precalculating the charge density (ICHARG=11) saves significant CPU time.
The OUTCAR will now contain the following lines:
e_ev=( 0.00000 0.00000 0.00000 ) e*Angst e_bp=( 0.00000 0.00000 0.00000 ) e*Angst
Total electronic dipole moment: p[elc]=( 0.00000 0.00000 0.00000 ) e*Angst
ionic dipole moment: p[ion]=( 2.25510 2.25510 2.25510 ) e*Angst
Calculations 3 and 4: The procedure mentioned under Calculation 2 now has to be repeated with IGPAR=2 and IGPAR=3 (again using the charge density obtained from Calculation 1), to obtain the contributions to the electronic polarization along and, respectively.
Calculations 5 to 8: To calculate the change in the electronic polarization of NaF due to the displacement of the fluorine sublattice, one should repeat Calculations 1 to 4, using the following POSCAR file:
NaF 4.5102 0.0 0.5 0.5 0.5 0.0 0.5 0.5 0.5 0.0 1 1 Direct 0.0000000000000000 0.0000000000000000 0.0000000000000000 0.5100000000000000 0.5100000000000000 0.4900000000000000
This corresponds to a displacement of the F ion by along the direction. The output of the Berry phase calculation using IGPAR=1 should now look similar to:
e_ev=( 0.00000 0.00000 0.00004 ) e*Angst e_bp=( 0.00000 0.18028 0.18028 ) e*Angst Total electronic dipole moment: p[elc]=( 0.00000 0.18028 0.18031 ) e*Angst
ionic dipole moment: p[ion]=( 2.25510 2.25510 1.93939 ) e*Angst
Collecting the results: The change in the electronic contribution to the polarization due to the F-sublattice displacement should be calculated as follows:
- Take the average of the terms obtained in calculations 2 to 4. Lets call this
- Add the terms obtained in calculations 2 to 4. Lets call this
- The electronic polarization of the undistorted structure is then given by:
- Repeat the above three steps for the results obtained using the distorted structure (Calculations 6 to 8), to evaluate,, and
- The change in the electronic contribution to the polarization due to the F-sublattice displacement, is then given by
To calculate the total change in polarization,, one should account for the ionic contribution to this change. This contribution can be calculated from p[ion] as given above from Calculations 2 and 5:.
is then given by. In this example we find electrons. Considering that the moved F-sublattice was displaced by 0.045102, this calculation yields a Born effective charge for fluorine in NaF of.
N.B.(I) In the case of spinpolarized calculations (ISPIN=2),the Berry phase of the orbitals is evaluated separately for each spin direction. This means a grep on "" will yield two sets of and terms, which have to be added to oneanother to obtain the total electronic polarization of the system.
N.B.(II) One should take care of the fact that the calculated "Berry phase" term along is, in principle, obtained modulo a certain period, determined by the lattice vector (), the spin multiplicity of the orbitals, the volume of the unit cell, the number of k-point in the "perpendicular" grid, and some aspects of the symmetry of the system. More information on this particular aspect of the Berry phase calculations can be found in references.
Related Tags and Sections
- ↑ a b R. D. King-Smith and D. Vanderbilt, Phys. Rev. B 47, 1651 (1993).
- ↑ a b D. Vanderbilt and R. D. King-Smith, Phys. Rev. B 48, 4442 (1993).
- ↑ a b R. Resta, Ferroelectrtics 136, 51 (1992).
- ↑ a b R. Resta, Rev. Mod. Phys. 66, 899 (1994).
- ↑ a b [R. Resta, in Berry Phase in Electronic Wavefunctions, Troisième Cycle de la Physique en Suisse Romande, Année Academique 1995-96, (1996).]
- ↑ [D. Vanderbilt and R. D. King-Smith, in Electronic polarization in the ultrasoft pseudopotential formalism, Unpublished report, (1998).]
- ↑ a b [Available online at _URL_


text:
WP 2015-11 Risk Preferences, Time Preferences and Smoking Behavior
ABSTRACT: There is a rich theoretical literature in economics which models habit-forming behaviours, of which addiction is the exemplar, but there is a paucity of experimental economic studies eliciting and comparing the preferences that economic theory suggests may differ between addicts and non-addicts. We evaluate a set of incentive compatible risk and time preference experiments conducted on a sample of student smokers and non-smokers at the University of Cape Town in 2012. We adopt a full information maximum likelihood statistical framework, which is consistent with the data generating processes proposed by structural theories and accounts for subject errors in decision making, to explore the relationship between risk preferences, time preferences and addiction. Across different theories and econometric specifications we find no differences in the risk preferences of smokers and non-smokers but do find that smokers discount significantly more heavily than non-smokers. We also identify a nonlinear effect of smoking intensity on discounting behaviour and find that smokers may be more likely to discount hyperbolically than non-smokers, which means they may be more prone to time inconsistency. These results highlight the importance of the theory-experimental design-econometric trinity and have important implications for theories of addiction.


text:
Retrieving Details of a file:
In this article I'm trying to explain how to retrieve details of a file using C#.net code. This article will help you for fresher as well as for beginners.
Follow below steps to achieve your goal.
Create a project and then right click on solution explorer then choose Add->New Item and then choose Web Form and give a name for that as "Retrievedetails.aspx".
Once Web Form has been created successfully then design the page by dragging and dropping 1 label control and 1 button control and 2 textbox controls into that design view.
Once design part has been completed successfully then the source code looks becomes like below.
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Retrievedetails.aspx.cs" Inherits="ASPnet_Retrievedetails" %>


text:
|Sea foam, Asbury Park, NJ|
Offshore decomposition of phytoplankton blooms dissolves large amounts of organic matter in seawater. Dissolved organic matter acts as a foaming agent or surfactant.
Breaking waves in the near-shore surf zone trap air. The presence of foaming agents generates persistent bubbles that stick to each other by surface tension.
Sea foam can be blown inland by strong on-shore winds.
I am forever walking upon these shores,
Betwixt the sand and the foam,
The high tide will erase my foot prints,
And the wind will blow away the foam,
But the sea and the shore will remain forever.
— Kahlil Gibran (Sand and Foam)


Skip to main content
Renesas Electronics America - Knowledgebase
I'm a Bit Confused about Code and Data Flash. For example, how do I count write cycles?
Latest Updated:06/16/2016
How do I count write cycles for code and data flash?
You need to make a distinction between data and code flash.
For example, on the S7G2, the first 8 blocks of code flash are 8KB in size and after that, each block is 32KB. A block is the smallest unit of erasure (write). The minimum unit you can write is 256 bytes. If you write less, the line will still have to be erased before writing to the rest of it. Even if you write only 128 bytes and then wish to access the other 128 bytes, the Flash Control Unit checks if the entire line is erased before proceeding to write. You cannot write to the same unit (256 bytes) more than once between erases, since the flash the bits can only by toggled one way (the other way is done only through erase).
Data flash is made of 64 byte blocks and the minimum you can write is 4 bytes. It follows the same rules as described above for the code flash. Renesas guarantees at least 125,000 write-erase cycles on the data flash region for the S7G2. The number of erases is the most important value when it comes to write-erase cycles. You can write to 16 4-byte chunks (i.e. 16 writes) and erase one block (64 bytes) and this is still considered one write-erase cycle.
Suitable Products


text:
An important feature added in Adobe AIR 1.5 is support for an encrypted local database. Previously, AIR applications could use a local database, but the database files are readable by any application, making them inappropriate for any use in which security is a concern. On the other hand, AIR has always supported an encrypted local store (that is, an encrypted text file), but that option provides none of the handy database functionality. As of AIR 1.5, your AIR applications can have the best of both worlds, by storing data in an encrypted database.
In this article, I'll start by highlighting the key points and minor differences of working with encrypted databases in an Adobe AIR application, versus working with unencrypted databases. From there, I'll get into the more important subject of using an encrypted database in the most secure method possible.
Creating and Using an Encrypted Database
Before getting into the code, you need to understand two things:
- As with any system that uses encryption, the same encryption key must always be used.
- Although you can later change a database's encryption key, you cannot retroactively encrypt an unencrypted database (or unencrypt an encrypted one, for that matter). In other words, the database must initially be created in an encrypted format.
Creating an encrypted database starts with a File object that represents the database file on the computer, and an SQLConnection object through which all queries will be executed:
var db = air.File.applicationStorageDirectory.resolvePath('example.db'); var conn = new air.SQLConnection();
Next, you establish the error and open-connection handlers; then, open the connection using open() or openAsync(), with the latter generally preferred.
To create the database, provide the mode SQLMode.CREATE as the second argument to either method:
conn.open(db, SQLMode.CREATE); conn.openAsync(db, SQLMode.CREATE);
That code works for unencrypted databases, but for encrypted ones you need to add the encryption key as the fifth argument to open() or the sixth to openAsync():
conn.open(db, SQLMode.CREATE, false, 1024, key); conn.openAsync(db, SQLMode.CREATE, null, false, 1024, key);
The key in that code is the important addition for an encrypted database. The encryption key must be a ByteArray object that's 16 bytes in length (it's therefore a 128-bit key). To create that object, you can do this:
var key = new ByteArray(); key.writeUTFBytes('ActualPassword16');
First, an empty ByteArray object is created, and 16 bytes of data are written to it. Note that the length of the provided string—ActualPassword16—is 16 characters long, each of those characters requiring one byte.
Once the database connection has been opened with the associated key, you would run a CREATE table SQL command on the database, and then insert records as needed. Subsequent uses of the same database merely need to use the same key but open the database using either SQLMode.READ or SQLMode.UPDATE, depending on what actions will later be taken. Attempts to connect to an encrypted database with an incorrect key will trigger an SQLError or SQLErrorEvent with an errorID of 3138. The generic error message will be File opened is not a database file (it actually is a database file—it just can't be decrypted).
This approach (hard-coding the key into the application) will work, but doesn't provide much security. There are two problems with this approach:
- The source code of an AIR application is viewable on the user's computer. With a little bit of effort, a malicious user could find the encryption key and then be able to unlock the database.
- Even if no one knew how to pick through the application's source code, anyone able to run the application—in other words, anyone with access to the computer—will effectively have access to the database as if it were not encrypted in the first place.


August 03, 2015
Advertisement Advertisement
Fatwa allow Syrians to eat cats, dogs to survive starvation
By Ghanizada - Tue Oct 15 2013, 9:36 pm
Syria-conflictReligious clerics in Syria have issued a new ruling (Fatwa) which allows tens of thousands of Syrians suffering from starvation, to eat meat that is normally forbidden.
The besieged Syrians were allowed in the new ruling (Fatwa) to eat cats, dogs and donkeys in a bid to survive from starvation.
The evidence of starvation of tens of thousands of people emerged after Syrian Arab Red Crescent evacuated women, children and elderly men from the rebel-held area of Moaddamiyah, where they had been surrounded for nearly 10 months.
In the meantime the syrian oppposition released video footage purporting to be from Moaddamiyah which shows besieged Syrians starving to death.
Moaddamiyah is one of at least five areas in Syria that are besieged either by regime forces or by rebels trying to overthrow Assad.
The religious ruling (Fatwa) was issued on the ocassion of Eid al-Adha, which authorizes the besieged Syrians in the Ghouta agricultural belt around Damascus to eat animals usually considered unfit for human consumption in Islam.
The clerics also warned that the living would have to eat the dead, if the situation continued to deteriorate.
Leave a Reply


text:
Sight Words Snakes & Ladders
Sight Words Snakes & Ladders is a twist on the classic Chutes & Ladders board game, incorporating some reading into the game play. The game gives children many opportunities for sight words repetition, while the board game format keeps it fun and engaging.
This game works best with children that are already familiar with the Snakes & Ladders game. Trying to learn both the game and the words at the same time can be too much, particularly for younger children.
The game is most fun when played in a small group of 2-4 players, but a child can also play the game by himself.
The game requires just a few basic items: a game board, game pieces, and a die.
- Snakes & Ladders Board
- Cardstock paper (approximately 110 lb / 200 gsm)
- Game Pieces (checkers, coins, blocks, etc.)
To make the Snakes & Ladders board, print out a Snakes & Ladders board and print it on four sheets of cardstock paper. Trim the edges off the four sheets and tape them together with clear tape. Using tape allows the board to be folded for easy storage in your sight words file when not in use.
Play the game as you would regularly play Snakes & Ladders. But when the player moves their game piece to a new spot, they must read each word along their path in order to progress. If they are unable to read one of the words, then they stop on that word until their next turn.
The player(s) begin by placing their game pieces on the START square. The first player rolls the die and moves forward that number of spaces. On each space the player needs to say the word written on the space in order to keep moving. If they don't know a word or can't say the word in less than 10 seconds, then their turn stops and we do a quick correction to help them learn the word.
If a player rolls a number that lands them at the bottom of a ladder and they get the word correct, they may "climb" to the square at the top of the ladder. If a player rolls a number that lands them on the head of a snake, then they "slide" down to the square at the snake's tail.
The game finishes when all the players get to the FINISH square, with the first player to the end being declared the winner. You do not have to roll an exact number to finish the game.
4. Printable Snakes & Ladders Templates
You can create your own custom Snakes & Ladders board, or use one of our pre-made boards. As you notice the students start to learn the old board, print out a new board that changes the order of the words to keep them from memorizing the positions of words.
4.1 Custom Sight Words Snakes & Ladders Boards
Use the Sight Words Snakes & Ladders Board Creator to create your own custom set of boards. This generator lets you use select from both existing sight words lists (e.g. Dolch & Fry) as well as allowing you to add custom words (e.g., current vocabulary words, names, etc).
4.2 Blank Snakes & Ladders Board
4.3 Dolch Sight Words Snakes & Ladders Boards
- Pre-K Dolch Words (40 words)
- Kindergarten Dolch Words (52 words)
- 1st Grade Dolch Words (41 words)
- 2nd Grade Dolch Words (46 words)
- 3rd Grade Dolch Words (41 words)
- Noun Dolch Words (95 words)
4.4 Fry Sight Words Snakes & Ladders Boards
- 1st 100 Fry Words (100 words)
- 2nd 100 Fry Words (100 words)
- 3rd 100 Fry Words (100 words)
- 4th 100 Fry Words (100 words)
- 5th 100 Fry Words (100 words)
- 6th 100 Fry Words (100 words)
- 7th 100 Fry Words (100 words)
- 8th 100 Fry Words (100 words)
- 9th 100 Fry Words (100 words)
- 10th 100 Fry Words (100 words)
4.5 Top 150 Written Words Snakes & Ladders Boards
To download a template, right-click and select Save As.
These Snakes & Ladders boards are provided under the Creative Commons Attribution 3.0 Unported License. Basically, you are permitted complete license to use the resources, provided you leave the attribution hallmark (our logo) on the resources. We would be happy to see the materials used in the classroom, in the home, as part of your tutoring business, or however you see fit. You do not need to contact us for permission to use the materials. We want you to use them!


Did you know
 - that in Germany assets or property bequeathed annually sum up to 250 billion euro and even more?
 - that an essential part of it remains on trust accounts because legal heirs are not known?
 - that the Treasury can be entitled to inherit if no legal heirs have been found?
 - that in Saxony and other states of Germany the probate court is not obliged to do heir searching?
 - that even small savings of the deceased person can only be given to the heirs if a legal testament is available, or if a certificate of inheritance has been issued?
 - that one or several executors can be appointed to ensure that the last will is fulfilled without raising quarrels among the heirs?


text:
Also found in: Dictionary, Thesaurus, Legal, Encyclopedia.
1. To penetrate, absorb, or soak in (to something). It takes a few hours for the mixture to sink in. If the water sinks in, it could cause your floorboards to warp or even rot.
2. By extension, to become understood; to make a lasting impression or memory. The gravity of what happened in this field 200 years ago didn't sink in until we saw actors recreating the war as it would have been fought. No matter how many times I go over it, this equation just isn't sinking in.
sink something in (to) someone or somethingand sink something in
1. Lit. to drive or push something into someone or something. The brave hero sank the wooden stake into the vampire. The hero sank in the stake.
2. Fig. to invest time or money in someone or something. (Sometimes implying that it was wasted.) You would not believe how much money I've sunk into that company! She sank in a lot of money, but it was all wasted.
1. Lit. to sink, submerge, or descend into something. How long will it take the water to sink in? It might take days for the oil to sink in, so you have time to clean it up.
2. Fig. [for knowledge] to be understood. I heard what you said, but it took a while for it to sink in. I pay careful attention to everything I hear in calculus class, but it usually doesn't sink in.
Penetrate the mind, be absorbed, as in The news of the crash didn't sink in right away. [Late 1300s]
1. To seep or soak; penetrate: When the floodwaters sink in, the ground will become soft.
2. To make an impression; become felt or understood: The meaning of the poem finally sank in after I had thought about it for a while.


text:
Children with autism love their moms, but they might have trouble having a decent conversation with them.
Even the most intelligent children with autism spectrum disorders can find it extremely challenging and frustrating to have a conversation with family members. Getting ready for Mother's Day, I designed two detailed worksheets to help kids talk with their mothers. (Lots of kids without autism have this problem too! Feel free to share with typical kids as well.)
How to print the worksheets:
Click on each image. Wait a moment for it to open in another window. Print. The images will be much easier to see if you print in color.
How to use worksheet number 1:
Introduce using words like this: "Everyone has their own separate mind. Each person has things they like and things they don't care for. We are going to use worksheets and practice conversations to figure out how to have a good conversation with your mom. Your mom might like some things that you also like. She will certainly like a lot of things that you don't care about at all."
Alternative: Have the child interview his mother to find out what she likes.
Worksheet 2: Questions, Comments and Friendly Comments.
(This worksheet is derived from my Green Zone Curriculum, a kit of conversation starter materials for kids with ASD that includes a photo matching game, two workbooks and a set of illustrated slides.) You should explain that these three categories of things to say are really important in conversation. Practice saying them together out loud. Demonstrate how each is used in conversation.
Using the worksheets together in role play practice:
You (teacher, therapist, SLP) can pretend to be the child's mother. You can hold the two worksheets facing the child while the child practices talking with you.
The best way to use the worksheets, of course, is with the actual mother present.
Note: Many children do not live with their mothers. If you are using these in a class, alter the worksheets as needed for grandmothers or other female guardians.
I hope you enjoy the worksheets, and I hope the autistic children you work with will benefit from using them.
Joel Shaul, LCSW

source: HuggingFaceFW/fineweb-edu


text:
Barwick in Elmett, Yorkshire Genealogy
Guide to Barwick in Elmett, Yorkshire ancestry, family history, and genealogy: parish registers, transcripts, census records, birth records, marriage records, and death records.
|Barwick in Elmett, Yorkshire|
|Poor Law Union||Barwick Gilbert Union|
|Registration District||Hunslet; Tadcaster|
|Parish registers: 1653|
|Bishop's Transcripts: 1600|
|Diocese||Pre-1836 - York; Post-1835 - Ripon|
|Probate Court||Exchequer and Prerogative Courts of the Archbishop of York|
|Location of Archive|
|Yorkshire Record Office|
Parish History[edit | edit source]
BARWICK-IN-ELMETT (All Saints), a parish, in the Lower division of the wapentake of Skyrack, West Riding, Yorkshire, 7 miles (N. E. by E.) from Leeds; containing 2275 inhabitants, of whom 1836 are in Barwick township.
Resources[edit | edit source]
Civil Registration[edit | edit source]
Birth, marriages and deaths were kept by the government, from July 1837 to the present day. The civil registration article tells more about these records. There are several Internet sites with name lists or indexes. A popular site is FreeBMD.
Church records[edit | edit source]
Online data content from chapelry registers of Barwick in Elmett exists at some of the following websites and for the specified ranges of years:
|AC = Ancestry - (£)|
|FREG = FreeREG - free|
|FS = FamilySearch.org|
|FMP = findmypast (£)|
|JOIN = JoinerMarriageIndex.co.uk - (£)|
|PALL = Pallot's Marriage Index (Ancestry) - (£)|
|BARWICK IN ELMETT PARISH (1600) Online Records|
To find the names of the neighbouring parishes, use England Jurisdictions 1851. In this site, search for the name of the parish, click on the location "pin", click Options and click List contiguous parishes.
This ancient parish (AP) was created before 1813. Church of England records began in 1653.
Census records[edit | edit source]
Census records from 1841 to 1911 are available online. For access, see England Census Records and Indexes Online. Census records from 1841 to 1891 are also available on film through a Family History Center or at the Family History Library.
Probate records[edit | edit source]
Records of wills, administrations, inventories, indexes, etc. were filed by the court with jurisdiction over this parish. Go to Yorkshire Probate Records to find the name of the court having primary jurisdiction. Scroll down in the article to the section Court Jurisdictions by Parish.
Maps and Gazetteers[edit | edit source]
Maps are a visual look at the locations in England. Gazetteers contain brief summaries about a place.
Websites[edit | edit source]
References[edit | edit source]
- Lewis, Samuel A., A Topographical Dictionary of England (1848), pp. 164-168. Date accessed: 07 January 2014.
- 'West Yorkshire, England, Baptisms, Marriages and Burials, _PHONE_,' Ancestry, accessed 12 May 2014.
- 'Yorkshire West Riding,' FreeREG, accessed 27 October 2014.
- Pallot's Marriage and Birth Indexes, Guide to Parishes.


Channels ▼
Blundering into the One Definition Rule
A frequently cited rule in the C++ standard is the One Definition Rule (ODR), whereby any unit, template, type, function, or object can have no more than one definition. In this article, I'll show you how I inadvertently blundered into an ODR problem, found my way out, and uncovered a deeper truth about the language standard.
This story starts with a very mundane exercise in debugging using the Windows API function OutputDebugString(), an attempt to simplify my life, followed by a puzzle, and (eventually) enlightenment.
The Pain of OutputDebugString()
If you are a Windows programmer, you are probably familiar with OutputDebugString(). This function allows you to send unadorned strings to the debugger. If you are inside Visual Studio debugging your app, that usually means either your Output or Immediate window. This is useful, but what is even more handy is its use in conjunction with the nifty utility DebugView. DebugView registers with the OS as a collector of these messages and offers some nice filtering while highlighting features — I've been using it for what seems like decades, and still rely on it for help with tough problems. If you are a fan of printf() debugging, this is your tool.
Note that OutputDebugString() is not a general purpose logging tool — in fact, you generally want it removed from production code. It doesn't have the kind of flexibility needed for this purpose, anymore than fprintf() would.
As much as I use it, I have to say that OutputDebugString() really sucks in many respects. First, it only accepts a string as an argument. This means that for anything except the most trivial debugging scenarios, you are going to have to manually format your text using either something from the sprintf() family of C functions or the std::ostringstream class.
It's pretty hard to pull this off without generating an extra three or four lines of code, and then all that stuff needs to be cleaned up or removed when you are done. And the last thing you need when debugging a problem is a lot of extra work.
A Blueprint for Improvement
There are any number of ways to work around this problem. My solution comes about via a number of self-imposed constraints:
 - Using my debugging output facility should require inclusion of a header file — nothing more. No objects to be instantiated, nothing to be added to the class under test.
 - Creating and outputting a formatted debug message of arbitrary complexity should trend to always using just one line of code.
 - Because debugging code that introduces bugs is a bit problematic, the code should be immune to buffer overflows and similar issues.
Depending on your proclivities, your solution is often going to be one of these two:
 - Option One is your own creation along the lines of OutputDebugStringF(), taking a formatting string á la printf(). Programmers who still have C-blood pumping through their veins are going to tend to use this solution, and they can even take advantage of modern language features to eliminate many of the issues that crop up with printf() — no buffer overflows and even no type mismatches.
 - Option Two is a variation on class OutputDebugStream, which can be used to send text to the debugger using iostream formatting. This, of course, gives us immunity from buffer overflows, type safety in formatting, and a standard way to use formatting for user-defined types.
My Implementation
My personal choice is for an iostream-based solution. I am able to completely deploy this anywhere by including the single file below in the C++ code that wants to use it:
_TAG_ once
_TAG_
_TAG_
_TAG_ ODS_PREFIX
_TAG_ ODS_PREFIX "ODS: "
class ods {
 template
 friend ods& operator<<(ods& stream, const T& that);
public :
 m_stream << ODS_PREFIX << " ";
 m_stream << "\n";
 OutputDebugString( m_stream.str().c_str() );
protected :
 std::ostringstream m_stream;
 static ods createTempOds(){ return ods();}
template
 stream.m_stream << that;
 return stream;
_TAG_ ODS ods::createTempOds()
After including this header file in your C++ source, you can send any line you like to the debugger like this:
 ODS << "Value 1: " << val1 << ", Value 2: " << val2;
It's all very easy and the formatting is done using standard C++ rules, so there is no need to learn anything new.
Not shown is the code that you can use to turn this off in production systems: Not only can you prevent it from sending any code to the debugger, but you can easily make sure that the work done to format the data is skipped as well.
Implementation Notes
The core of this code is the ods class. This class contains an std::ostringstream object that accumulates all of the data that is being formatted in the single line for debug output. This member, m_stream, is initialized with a prefix that is defined in a macro, giving me the flexibility to change it in different source files, and making debug output easier to filter and search. When all of the data has been added to this object, it is sent out to the debugger by extracting the C string and passing it to OutputDebugString().
Getting this transaction to work properly depends on the C++ rules regarding temporary objects. The object that is collecting all the data is a temporary created by the ODS macro, which calls ods::createTempOds(). The temporary returned by this function is then the target of the insertion operator <<. Each of the following insertion operators add their data to the temporary object. Section 12.2 of the 1998 spec says this about the lifetime of temporaries:
"Temporary objects are destroyed as the last step in evaluating the full-expression (1.9) that (lexically) contains the point where they were created."
This is nice because it means that we can count on the ods destructor being invoked at the end of the expression — so OutputDebugString() will be called when we want it to be. If we weren't using a temporary, we couldn't reliably use the destructor to trigger output — it would be called when the object goes out of scope, which may occur later than we need.
One additional complication is that we are using the insertion operator on a user-defined type, ods, that doesn't have this by default. That problem is managed at the end of the header file with a very simple template function definition. Basically, it defines a generic insertion function that inserts the object you want printed into the m_stream object (which actually knows how to deal with it), returning a reference to itself so that the canonical chaining can occur.
This Is So Simple, Nothing Could Go Wrong
As a simple test of this, I created an app with two source files, main.cpp and sub.cpp:
_TAG_ "ods.h"
void sub();
int main(int argc, char* argv[])
 int foo = 15;
 ODS << "foo: " << 15;
 return 0;
_TAG_ ODS_PREFIX "sub.cpp: "
_TAG_ "ods.h"
_TAG_
void sub()
 ODS << "current time: " << time(NULL);
Note that in the file sub.cpp I used the preprocessor to define a different prefix string. This will allow me to easily flag lines that originate in this file. In main.cpp, the default prefix of ODS: will be used.
When I run this program, the debug window gives me the following output:
ODS: foo: 15
ODS: current time: _PHONE_
Whoops, something is wrong. The formatting is working, but the same prefix is used in both files. I expected the line with the current time to be prefixed with sub.cpp:. How did this fail?
Related Reading
More Insights
Currently we allow the following HTML tags in comments:
Single tags
 Defines a single line break
 Defines a horizontal line
Matching tags
 Defines an anchor
 Defines bold text
 Defines big text
 Defines a long quotation
 Defines a table caption
 Defines a citation
 Defines computer code text
 Defines emphasized text
 Defines a border around elements in a form
 This is heading 1
 This is heading 2
 This is heading 3
 This is heading 4
 This is heading 5
 This is heading 6
 Defines italic text
 Defines a paragraph
 Defines preformatted text
 Defines a short quotation
 Defines sample computer code text
 Defines small text
 Defines a section in a document
 Defines strikethrough text
 Defines strikethrough text
 Defines strong text
 Defines subscripted text
 Defines superscripted text
 Defines underlined text


text:
The following spreadsheet uses the system design rules from the Jovian Chronicles Companion 1st Edition. Individual values have been adjusted slightly, as the original rules did not effectively affect the modifiers for different accuracy, rate of fire, and some querks. In the column "JC Calc" you find the calculation of the costs according to original rules, in the column "Mod. Calc" the calculation after my adaptation.
Pale blue boxes require an entry or selection. Yellow boxes show important intermediate calculations and values. The final calculation of the created design is done in the two black framed tables below. Some tables with reference values follow, these are included by the system design depending on the inputs.


text:
TAIL RHYMETail rhyme (translated from the French rime couée or Latin rhythmus caudatus, also called caudate rhyme): A unit of verse in which a shorter line, followed by a longer line or section of longer lines, rhymes with a preceding short line. It may also use rhyming couplets or triplets, followed by a tail or much shorter line, where the tails rhyme with one another. The number of possible variants following this scheme is too many to list here. Whichever verse pattern you decide on, it must be followed throughout the poem.
Below is the poem entitled ON THE OCEAN WAVES which was written by poet
Richards. Please feel free to comment on this poem. However, please remember, PoetrySoup is a place of encouragement and growth.
Read Poems by
Seagulls bob at rest on the ocean waves.
A tired fisherman the predawn chill braves,
disgorging his catch on quay.
Gutting knives of vendors clicking like claves,
staining blood red and sliming the cask staves.
A twist of the wrist the key.
Barter for *snoek, which in newspaper saves –
a very old trick passed down by the Cape slaves
before in 1834 been set free.
A vanilla dawn sun the wave crests paves:
North-westerly wind mercilessly raves,
on the ocean waves with glee.
*SNOEK - a line fish
Scientific name: Thyrsites atun
Other/Common names: Cape Snoek, Barracouta (in New Zealand and Australia)
8 December 2012
Tail Rhyme has many variations. Please see the About section for details.


text:
I have been running an ultrasonic sensor on a raspberry pi for a while, with quite some good results.
I wanted to port this on an esp8266 and, it looks like the result are a bit less accurate than on the pi.
Here is the graphs usage of each one :
The line is quite smoother on the pi.
Here is the code i use on the esp8266 to get the values :
Code: Select all
import time import machine trigger_pin=5 echo_pin=4 trigger=machine.Pin(trigger_pin, machine.Pin.OUT) echo=machine.Pin(echo_pin, machine.Pin.IN) def get_distance(): trigger.low() time.sleep_us(5) trigger.high() time.sleep_us(10) trigger.low() while echo.value()==0: start=time.ticks_us() while echo.value()==1: delta=time.ticks_diff(time.ticks_us(), start) distance=(delta/2)/29 return distance
I suspect that the tick is less reliable on the esp8266 than on the pi. For example, in an other project, using a timer of 90000 milliseconds yield in a run of 82 seconds.
Any idea on how the code could be getting better result out of this sensor on esp8266?


text:
With NSF Grant, ODU's Burdige Will Be Looking for Missing Neodymium Flux
Old Dominion University oceanographer David Burdige will do some scientific sleuthing in what might be called "The Case of the Missing Neodymium Flux" as an investigator on a $264,000 project funded by the National Science Foundation (NSF).
Isotopes of the rare earth element neodymium are present in varying forms in the oceans. Scientists use the slight atomic differences between these isotopes to trace them back to the land mass where they originated, and because of this, the isotopes serve as tracers of circulation in today's oceans. Also, in the layers of sediments at the ocean's bottom, neodymium isotopic signatures form a record of ocean circulation going back millions of years.
But while more and more scientists are looking to neodymium isotopes for answers about the oceans and global climate, there remain unanswered questions about the oceanic neodymium budget. There seems to be more of the element getting into the oceans than anyone has accounted for. This has been dubbed the "neodymium paradox."
Some researchers have speculated that particles deposited in the oceans by winds or rivers release more neodymium upon contact with seawater than has been measured so far. Burdige and his partner in the NSF study, Karen H. Johannesson, a geochemist at Tulane University, believe, on the other hand, that groundwater discharges that happen under the surface of the oceans contain precisely the concentrations and forms of isotopes needed to balance the neodymium budget.
The three-year NSF grant was funded through a program at NSF called Emerging Topics in Biogeochemical Sciences and is titled "Collaborative Research: Evaluating the Role of Submarine Groundwater Discharge in the Oceanic Neodymium Budget."
Burdige, who is professor and eminent scholar of ocean, earth and atmospheric sciences, said the questions about the neodymium budget limit the ability of researchers to "confidently interpret the geochemistry of neodymium in the modern oceans and, perhaps more importantly, to read the paleoceanographic neodymium isotope record."
Preliminary analysis by Burdige and Johannesson, which was reported in an article they wrote for the journal Earth and Planetary Science Letter, suggests that submarine groundwater discharge (SGD) to the oceans is a major component of the missing neodymium flux.
"A primary goal of this project is to assemble a data base of neodymium concentrations and isotope ratios for groundwaters from a range of locations that discharge to the coastal oceans," the researchers wrote in their project proposal. "These data will subsequently be used to develop a global mass balance model to test whether the measured neodymium concentrations and isotope ratios of SGD are sufficient to balance the oceanic neodymium budget. The model will also be used to evaluate the impact of varying groundwater neodymium fluxes, and their associated isotopic composition, on the paleoceanographic neodymium isotope record preserved in hydrogenous sediments."
Burdige said he believes the proposal also hits on other important issues beyond neodymium, "namely the ability to begin to quantify groundwater discharge to the oceans, in general." This has become a hot topic in recent years, and he thinks that this aspect of the project caught the attention of geochemists, hydrogeologists and oceanographers more broadly interested in better understanding land-ocean couplings. The NSF grant runs from Oct. 1 of this year thru September 2011.
This article was posted on: October 7, 2008
Old Dominion University
Office of University Relations
Room 100 Koch Hall Norfolk, Virginia 23529-0018
Old Dominion University is an equal opportunity, affirmative action institution.


text:
UPGMA (Unweighted Pair Group Method with Arithmetic Mean) is a simple agglomerative or hierarchical clustering method. It is one of the most popular methods in ecology for the classification of sampling units (such as vegetation plots) on the basis of their pairwise similarities in relevant descriptor variables (such as species composition). In bioinformatics, UPGMA is used for the creation of phenetic trees (phenograms). In a phylogenetic context, UPGMA assumes a constant rate of evolution (molecular clock hypothesis), and is not a well-regarded method for inferring relationships unless this assumption has been tested and justified for the data set being used. UPGMA was initially designed for use in protein electrophoresis studies, but is currently most often used to produce guide trees for more sophisticated phylogenetic reconstruction algorithms.
The UPGMA algorithm constructs a rooted tree (dendrogram) that reflects the structure present in a pairwise similarity matrix (or a dissimilarity matrix).
At each step, the nearest two clusters are combined into a higher-level cluster. The distance between any two clusters A and B is taken to be the average of all distances between pairs of objects "x" in A and "y" in B, that is, the mean distance between elements of each cluster:
The method is generally attributed to Sokal and Michener. Fionn Murtagh found a time optimal time algorithm to construct the UPGMA tree.
See also
- ^ Legendre, P. and Legendre, L. 1998. Numerical Ecology. Second English Edition. Developments in Environmental Modelling 20. Elsevier, Amsterdam.
- ^ Sokal R and Michener C (1958). "A statistical method for evaluating systematic relationships". University of Kansas Science Bulletin 38: 1409–1438.
- ^ Murtagh F (1984). "Complexities of Hierarchic Clustering Algorithms: the state of the art". Computational Statistics Quarterly 1: 101–113.
External links


text:
Student Emergency Medical Forms
Allen East will be using FinalForms for digital forms. Students in grade 5-12 are required to provide a digital signature as well for a few of the forms. Once Parents have completed the forms the student will receive an email to their GMAIL account. The username is exactly the same as what they use to log into the Chromebooks. Make sure students have _USER_.alleneastschools.org on the end of their email address.


Program Components
English Courses
Puente students take two consecutive English courses. These writing courses provide a supportive and stimulating environment for Puente students to build confidence in their writing skills through the exploration of Latino/a literature.
Personal Growth Courses
Puente students take two consecutive Personal Growth courses. These courses are designed to help students improve study skills and learn personal success techniques in order to become better students.
Puente students work closely with their Puente Counselor until they graduate, exploring career options, developing an academic educational plan, and identifying lifetime goals.
Puente students are matched with a mentor from the business or professional community. Mentors share with students their personal, academic, and career experiences, and provide a realistic view of the professional world.


text:
Author(s): Powers, Shawn; Murphy, Leah; Banerjee, Abhijit; Pritchett, Land; Zeitlyn, Benjamin; Rose, Pauline; Hunt, Fran; Banerji, Rukmini; Crouch, Luis; Glewwe, Paul
Organisation(s): Health and Education Advice and Resource Team
Pages: 29 p.
Despite increasing numbers of children being enrolled in school, their learning outcomes are often of poor quality. This report looks at the issues and research on poor quality student learning outcomes and what inputs can create the enabling learning environment needed to address this. The report begins with a brief section on the context of the education system in Bangladesh. A key global evidence paper is then presented which provides an overview of many of the issues related to poor learning outcomes in developing countries.


How to Get More Out of a Short Story
The short story: do not cancel your GRE exam. Period. Another thing with the choice is that the logic behind it does not make much sense. If the GRE was so terrible that you needed to cancel your exam then how come you just made it all the way through? And just about any other legitimate reason to cancellation your exam would stop you from taking the next step because you would not have made it to the end in the first place.
First off, let's examine the test itself. It is a test of general reasoning and problem solving abilities. You should expect to get an average grade in this course, depending on how well you have prepared yourself. Most students in this situation do not know what to expect in this class and will make silly decisions based on their lack of knowledge and preparation.
I suggest you look into how much prep time you have, and where you stand at this point in your learning curve. This will help you decide if you can afford to take another GRE exam or if you should focus on other areas of study. It would also help you determine if it would be worth it to pay for a new GRE prep course or whether you should move on.
The second issue is that the logic to cancel your exam really does not make much sense. Why would you take the next step? Your chances are not that great and you will not improve enough on the previous test to make it into the next level anyway.
In short, it is your GRE examination that is the important one, not the short story. If you take the next step and get into the next level of GRE studying, it will be a lot more beneficial to your GRE studying.
If you want to get more out of your GRE test, you should start looking for ways to get more out of it. If you focus on the real test, you will be prepared for it and you will get more out of it. If you start focusing on studying, you can see more improvement than ever before and you will be ready to take a GRE prep course.
There are a few places to look when you are looking for GRE prep courses or GRE courses online. Some of them will give you a full list of questions you have to answer and will show you how to get answers and move through each section. Others will give you free access to the actual GRE material and you can practice and do practice tests on them. Either of these options should be used.
When you are getting ready for your next test you should always remember that there is a difference between test taking and preparing. Many people think they know what they are doing and get the job done in the short story. They think they know how to prepare and think that the next test will come easy and they will be able to pass it without any trouble. When you are looking for answers, remember that GRE prep is different than your short story.
When you go to a book store and pick up a short story and read the first few pages, it should feel natural and comfortable. When you are going to a class, you are not sitting there for an hour listening to a professor explain your problem or answer all the time. You are going to learn by asking questions and having real life conversations and using the information you hear.
When you study for the GRE, you can find that the short story may be perfect for you but the best way to find the material that works for you is to look for short stories that are similar to what you want to accomplish with your GRE exam. You will be surprised at how many different topics are covered. and how simple and useful some of them can be to use as a source for your study.
When you want to get better at your GRE, you will have to go and study, but you will have to remember that GRE prep is something entirely different from studying for a short story. Make sure you find ways to get more out of your GRE exam.


text:
NASA to work on approved sci-fi books
Will feature a manned US space programme
NASA is working with a publisher to create a series of sci-fi books inspired by NASA's work.
The US space agency has inked an agreement with Tor-Forge Books to work on "NASA Inspired Works of Fiction" that will contain stories relating to current and future missions and operations.
NASA's space shuttle programme came to an end last month, removing a large part of the US manned space programme. Though flights to the International Space Station will continue using Russian Soyuz ships, in the meantime surplus Earthbound 'nauts are helping put pen to paper - or fingerstroke to ebook, perhaps.
"Ultimately this agreement will benefit the public, as we look for innovative ways to communicate our past and current achievements, while focusing on the needs of the future," said the Goddard's Space Flight Center's Nona Cheeks.
NASA noted that some people who work at the space agency often ended up there after consuming lots of sci-fi in their formative years.
It looks like the books will also be intended to help educate earthlings about the "significant role" played by NASA in everyday lives (memory foam was developed by NASA's Ames Research Center to improve the safety of aircraft cushions, for instance).
All of the books will be checked by NASA experts to ensure that, although fictional, they are scientifically accurate. NASA scientists and engineers will be paired with Tor-Forge writers to collaborate on the series of books.
The agency hopes that, through the warm-the-cockles-of-any-geek-heart medium of sci-fi, it will attract and retain students who study science, technology, engineering and mathematics. ®


text:
Objective of the drill:
Improving reactive speed and observing surroundings in order to do tasks correctly.
Explanation of the drill:
Two teams are on the floor facing each other on two sides of the net. By connecting commands to tasks, the players have to think before they do something. As can be seen in the video, the coach can link numbers to a team and make them work with volleyballs.
Duration of the drill:


text:
Written by Roger Ruiz
Community Relations Specialist
The South Texas Blood & Tissue Center celebrates Black History Month in February by shedding light on Charles Drew, who is considered the inventor of blood banking.
During Dr. Drew's residency at Columbia University's Presbyterian Hospital in the 1940′s, Drew developed a technique for the long term preservation of blood plasma. By separating the liquid part of blood (plasma) from the whole blood (the part containing the red blood cells) and refrigerating them separately, he could combine them up to a week later for transfusion.
STBTC still uses Dr. Drew's method of separation to break each unit of blood donated into several components, helping as many as three patients with a donation from one donor. A patients like Chris Pinkerton who suffers from Sickle Cell Anemia and needs blood transfusions often benefits from blood donors.
With the advanced research and technology, red blood cells now have a shelf life of 42 days and plasma can be frozen and stored for a year. To donate blood and save a life visit our website at _URL_


text:
AMF and AHS leaders address migraine community, answer their questions about COVID-19
In the midst of the COVID-19 pandemic, it's important to remember that the community is here to support one another and provide accurate information to navigate these unprecedented times. On Wednesday, March 23, 2020, the American Migraine Foundation collaborated with the American Headache Society to film a webinar featuring AMF Chair Dr. David Dodick, AHS President Dr. Kathleen Digre and AMF Executive Director Nim Lalvani who gathered to address the patient community and answer questions about migraine and COVID-19.
During the discussion, Dr. Dodick provided an overview of COVID-19, how it is transmitted and the importance of flattening the curve. Dr. Digre focused on addressing the migraine community's risk compared to the general population.
"Every patient has a risk to get COVID-19 but people with migraine are not at greater risk," she said.
She did note, however, that COVID-19 could impact people living with migraine by limiting their access to migraine care, as the healthcare system is under strain and resources like urgent care centers become riskier. Dr. Dodick and Dr. Digre also discussed the implementation of telemedicine to help patients access the care they need.
"It's incredible to me how quickly institutions and practices are developing the technological capacity to provide these virtual visits, but it's also surprising to me how savvy patients actually are," said Dr. Dodick. "They're bringing themselves up to speed very quickly because of the need."
Nim Lalvani asked both participants to share tips for patients using telemedicine for the first time. Dr. Digre recommended patients come prepared by writing their questions down ahead of the appointment. They should also have notes about the medications they take and their doses. Dr. Dodick shared the 3 F's that he asks patients to remember for appointments:
- Frequency – how many headache days the patient is experiencing in a given month.
- Functional impairment — on how many of those headache days impairs the patient's functioning.
- Frequency – how frequently patients are taking acute medicines and how they're working.
Other topics discussed during the webinar include keeping a 90-day medicine supply, using rescue medications at home to avoid going to urgent care centers or emergency rooms and dealing with stress during this time. The doctors also answered questions submitted by our community. They covered topics ranging from migraine treatment's effect on the immune system and the definition of a medically necessary procedure.
In the coming weeks, the American Migraine Foundation will be hosting a weekly Facebook Live event as part of a series dedicated to wellness during the COVID-19 pandemic.
The American Migraine Foundation and the American Headache Society are here to support the patient community. We will continue to develop resources and empower you with accurate, credible, and timely resources.


Sign up ×
I'm writing a code for a deck of cards which shuffles the deck of cards. I tested the code but I don't really know if it's actually doing what it's supposed to be doing correctly? What do you think?
This is the code for the shuffle method:
public void shuffle()
 for( int x = myDeck.size(); x > 0 ; x--)
 Random rn = new Random();
 int index1 = rn.nextInt(52);
 Card c = myDeck.remove(index1);
My output seems shuffled in its numbers but not by the name of the card like spades hearts etc,
For example this is my output when I test the code :
Deuce of spades
Seven of spades
Eight of spades
Ace of spades
Three of hearts
Five of hearts
Six of hearts
Seven of hearts
Nine of hearts
Ten of hearts
Queen of hearts
King of hearts
Ace of hearts
Seven of diamonds
Eight of diamonds
Jack of diamonds
King of diamonds
Three of clubs
Seven of clubs
Nine of clubs
Jack of clubs
Queen of clubs
King of clubs
Ace of clubs
Queen of spades
Deuce of clubs
Three of spades
Nine of diamonds
Four of spades
Four of clubs
Deuce of hearts
Jack of spades
Ten of clubs
Six of diamonds
Jack of hearts
Six of clubs
Four of diamonds
Five of diamonds
Ace of diamonds
Four of hearts
Nine of spades
Ten of spades
Five of spades
Three of diamonds
Six of spades
Five of clubs
Deuce of diamonds
Eight of hearts
King of spades
Ten of diamonds
Eight of clubs
Queen of diamonds
Like there's always repeated names. is it wrong since the point of shuffling is to mix it up?
This is the actual question: When playing cards, it is, of course, important to shuffle the deck, that is, to arrange things so that the cards will be dealt in a random order. There are several ways to achieve this. One strategy involves repeatedly picking a card at random out of the deck and moving it to the end. The following code uses the Random class (which you met on page 8 of the "ArrayLists" section of the online course) to perform one such "pick and move to the end" operation:
Random rn = new Random();
int index1 = rn.nextInt( 52 );
Card c = myDeck.remove( index1 );
myDeck.add( c );
To shuffle the deck effectively, this operation should be repeated many times (say, 500 times). Create a new instance method, shuffle, for the Deck class that uses a single Random object and a for loop to shuffle myDeck. After suitably modifying the main method, use it to test your new code.
So my main question is: am I doing this wrong?
share|improve this question
Can you utilize the Collections.shuffle method with the Cards in your Deck? -… – Dan W Aug 6 '12 at 21:04
One violation is "uses a single Random object". You are using one per iteration of your loop. – jeff Aug 6 '12 at 21:04
I've added the homework tag based on the "actual question". – pb2q Aug 6 '12 at 21:04
If you have to use the method specified, the blurb you posted with it says you have to call that method 500 times or so to actually shuffle your deck. Are you actually shuffling that many times, or are you simply calling it once? – Sean Cogan Aug 6 '12 at 21:04
the point of the exercise is to be able to do what.shuffle does using Random I think – Panthy Aug 6 '12 at 21:05
4 Answers 4
up vote 16 down vote accepted
Just change rn.nextInt(52); to rn.nextInt(x) and you have a proper Fisher-Yates shuffle. No need to do more than 52 iterations.
Why this works:
 - In the first iteration (when x is 52) you'll select a random card from the full deck and move it last.
 - In the second iteration (when x is 51) you'll select a random card from the remaining cards and move it last.
 ...and so on.
 - After 52 iterations, the first card selected, will have ended up in the first index. Since this card was selected randomly from the full deck, each card is equally probable.
 - Same applies for second index, third index,...
 - It follows that each possible permutation of the deck is equally probable.
(In production code, just use Collections.shuffle in these situations.)
share|improve this answer
To give a little more, the problem most likely is that you're reinitializing your random number generator each time, which is not how they're usually meant to be used. Declare it once, and the numbers you pull in each iteration will be more random. – Carl Aug 6 '12 at 21:06
Correct me if I'm wrong, but wouldn't this change make it a Knuth Shuffle? – Dennis Meng Aug 6 '12 at 21:06
_USER_, that shouldn't matter technically speaking. – aioobe Aug 6 '12 at 21:07
_USER_ It seems the whole point of this assignement is not to use Collections#shuffle! – assylias Aug 6 '12 at 21:07
_USER_ Your loop needs to run more than 52 times: for (int x = 0; x < 500; x++) would work better and is what you are being asked. – assylias Aug 6 '12 at 21:17
The best way to do this would be to use the built in Collections.shuffle() method, which will shuffle your ArrayList for you in a random way (or near enough to random.)
The problem with your logic at the moment is that it's picking out a random card from the deck, and putting it on the end - and doing that 52 times. Now you've got a good change that you'll end up doing this to a number of cards multiple times, and some none at all - hence the problem you're getting with lots of cards that appear to have not been randomised.
You seem to have the logic that you need to do this operation for the number of cards in the deck, which is flawed; you need to perform it many more times.
You've got two main logical solutions, you could firstly do this many more times - say 10 times more than you're doing at present, or you could re-engineer your code to use a built in (or more effective) shuffling algorithm.
share|improve this answer
Doing 520 iterations would A) not be very efficient B) not yield a result where all permutations are equally probable. – aioobe Aug 6 '12 at 21:50
_USER_ I agree it's not ideal, hence my mention of Collections.shuffle() - but if the OP has to use that method, then using more iterations will be better than not. – berry120 Aug 6 '12 at 22:58
Not really. 52 iterations is enough. See my answer. – aioobe Aug 7 '12 at 8:35
The question gives a hint:
Whereas your loop only runs 52 times (myDeck.size()). So you remove a card and replace it randomly 52 times only. That does not seem to be enough.
ps: it is more usual to write for(int i = 0; i < max; i++) than for (int i = max; i >0 i--).
share|improve this answer
I agree, 52 times is definitely not enough. 1+ – Hovercraft Full Of Eels Aug 6 '12 at 21:06
52 times is enough if you do it right. (Have a look at the Fisher-Yates algorithm for instance.) If you do it wrong, it doesn't really matter how many iterations you do, you'll always have a bias towards certain permutations. – aioobe Aug 6 '12 at 21:44
_USER_ I don't think I agree - It would be enough if the cards were removed from the deck and added to a new deck - but since they are put back into the deck (as proposed in the assignement), the fact that the random function is (roughly) uniform is not enough as one card can be shuffled more than once. – assylias Aug 6 '12 at 21:54
_USER_ Your latest edit adresses that issue. – assylias Aug 6 '12 at 22:08
Simplified my answer though... – aioobe Aug 6 '12 at 22:14
Change the loop to:
 ArrayList myDeck = new ArrayList();
 for(int i=0; i< 52; i++){
 Random rn = new Random();
 for( int x = 52;!myDeck.isEmpty() ; x--) {
 int index1 = rn.nextInt(myDeck.size());
 //Card c = (Card)myDeck.remove(index1); -> this comment here should be removed
 System.out.print(index1 + ", ");
This way you won't repeatedly select the same card, plus you'll always pick a number (cell) < myDeck.size() which is constantly changing when


text:
though some may be very close in number.
Accurate measures must be to and from heel-points,
even though the time of the snapshot is the instant of
9. Aberrations aren't measured as a distinct
Aberrations are anything that
changes the heel-point position and/or rotates the
foot-line after heel-contact of the current foot, but
before the next heel-contact of the other foot.
These are slides, jumps, foot (toe) extensions and
rotations on the planted foot, etc. A spin turn is an
aberration, but a step turn isn't.
This is a
complex and variable set of movements which is separated
from the other 7 parameters by the choice of the time
snapshots as the time of heel-contact, rather than
Aberrations is a fundamental
parameter which accounts for all relevant changes in the
position of the planted foot.


text: A wide-area time authentication algorithm is proposed to compute the Global Positioning System (GPS) timing that is resilient against spoofing attacks. The considered widearea network consists of multiple GPS receiving systems, each comprising of the innovative distributed multiple directional antennas (DMDA) setup triggered via a common clock. Based on the communication infrastructure of the grid, the single-difference pseudorange residuals across the antennas are processed using the wide-area belief propagation-based extended Kalman filter (BP-EKF) algorithm in a distributed manner. To detect spoofing, a KL-divergence-based threshold is used to estimate the dissimilarity in the antenna-specific timing errors. Thereafter, the pseudoranges are corrected using the BP estimates of timing error and processed via adaptive EKF to compute the GPS timing, which is given to the phasor measurement units (PMUs). We have demonstrated the successfully detection and mitigation of the external timing attack, by subjecting one receiving system to a simulated meaconing attack that induces a 60 micro second time delay. Thereafter, by analyzing the voltage stability index of a critical node in the simulated grid, we have also validated the compliance of the proposed wide-area BP-EKF estimated timing with the IEEE-C37.118 standards.


Top 5 Advantages of Owning a Bottle Packing Machine
A bottle packing machine is generally used to pack up a group of bottles within a larger container, like a cardboard packaging, case packers, or wrappers. For different kinds of packaging, different equipment within the machines are used. Generally, these machines provide the manufacturing companies with a lot of benefits which include (but are not limited to):
 - High Efficiency
 - A reduced labor intensity
 - Significantly lower costs
 - Meticulous quality
 - High energy conservation
 - Environmental Protection
These benefits of owning a bottle packing machine are discussed in detail below.
bottle packing machine
High Efficiency
The process of manual packing is really slow. Moreover, it is very common that the packings would be inaccurate, loose, or damaged when done manually. On the other hand, if a bottle packing machine is used it will ensure that the packings are done speedily and with astonishing perfection and accuracy.
Not only are the packing's accurate though an automatic bottle packing machine, less damage is caused to the bottles and packages. This all makes the production highly fast and efficient.
Reduce Labor Intensity
Manual packing requires a lot more effort as workers will have to spend more time and work longer hours packing. However, with the bottle packing machine the labor required is reduced to significant levels, and the laborers get more free time to develop their skills in other areas.
Manual labor may also not be safe enough for the workers. On the contrary, automatic bottle packing machines may provide more safety and security to the employees.
Lower Costs
Labor intensive packaging may cost more, since it requires much more effort (and time). On the other hand, through a bottle packing machine these costs would be reduced significantly since there are standardized settings which would not cause fluctuation in costs, and the labor intensity would also be significantly reduced.
While less money would not be spent on packing, more of it can be used in employee skill development schemes that the workers can benefit from.
Meticulous Quality
It is well understood that human approximation can be a little off. Each packing requires the same amount care, adjustment, method and quality. With manual packing there would be no standardized system of packing due to the existing potential of human error. Although some packings would be flawless, others may have problems in them.
The thing about an automatic bottle packaging machine is that, given its automatic nature, it has a predefined standard that will be followed while packing all bottles. This means that each packing would be entirely the same, with a little room or probability of changes. This ensures a meticulous quality.
Energy Conservation and Environmental Protection
In a bottle packing machine like the automatic shrink wrap machine, it is ensured that just the right amount of material is used. Also, as mentioned before, there is almost no probability of the packing material to get damaged during the packing process. This ensures two things.
Energy Conservation
As the packaging is flawless and requires the least amount of material to do the job, very less energy is used as compared to the manual packing method.
Environmental Protection
As less material is wasted in the automatic packing process, there will be even a lesser waste. This is more sustainable for the environment since most of the packing is not biodegradable.
Although the headquarters of Tech-long is in China, it has various other branches in Indonesia, India, Ethiopia and even UAE. Moreover, Tech-Long's sales network encompasses many parts of the world including Korea, Japan, Oceania, the Americas, Middle East, Russia and South Asia. This shows that the automatic bottle packing machine and other products are widely celebrated around the world.
James Williams
Log In
Forgot password?
Forgot password?
Your password reset link appears to be invalid or expired.
Log in
Privacy Policy
Add to Collection
No Collections
Here you'll find all collections you've created before.


PASCAL - Pattern Analysis, Statistical Modelling and Computational Learning
Ranking relations using analogies in biological and information networks
Ricardo Silva, Katherine Heller, Zoubin Ghahramani and E M Airoldi
Annals of Applied Statistics Volume 4, Number 2, pp. 615-644, 2010.
Analogical reasoning depends fundamentally on the ability to learn and generalize about relations between objects. We develop an approach to relational learning which, given a set of pairs of objects S = {A(1) : B (1), A(2) : B(2),...,A(N) :B(N)}, measures how well other pairs A:B fit in with the set S. Our work addresses the following question: is the relation between objects A and B analogous to those relations found in S? Such questions are particularly relevant in information retrieval, where an investigator might want to search for analogous pairs of objects that match the query set of interest. There are many ways in which objects can be related, making the task of measuring analogies very challenging. Our approach combines a similarity measure on function spaces with Bayesian analysis to produce a ranking. It requires data containing features of the objects of interest and a link matrix specifying which relationships exist; no further attributes of such relationships are necessary. We illustrate the potential of our method on text analysis and information networks. An application on discovering functional interactions between pairs of proteins is discussed in detail, where we show that our approach can work in practice even if a small set of protein pairs is provided.
PDF - Requires Adobe Acrobat Reader or other PDF viewer.
EPrint Type:Article
Project Keyword:Project Keyword UNSPECIFIED
Subjects:Computational, Information-Theoretic Learning with Statistics
Learning/Statistics & Optimisation
Theory & Algorithms
ID Code:7857
Deposited By:Zoubin Ghahramani
Deposited On:17 March 2011


text:
The subjects of evisceration and enucleation of the eyeball are just now commanding more attention than in the past, especially in view of the fact that they are to be made the subjects of special inquiry at the next meeting of the International Medical Congress at Paris. Barring special conditions and indications, both enucleation and evisceration have their advantages and disadvantages.
The advantages of the former are a rapid healing of the wound with the minimum of local reaction, and the absolute certainty that it will not be followed by sympathetic inflammation in the other eye. Its disadvantages are that it is more radical than necessary, in that it removes too much tissue and leaves a very poor stump for an artificial eye.
The disadvantages of evisceration are just the opposite of the advantages of enucleation, viz., a considerable local reaction and an occasional case of sympathetic inflammation. Though the


text:
Revista de Biología Tropical
Print version ISSN 0034-7744
ALTRICHTER, Mariana; SAENZ, Joel C; CARRILLO, Eduardo and FULLER, Todd k. Dieta estacional del Tayassu pecari (Artiodactyla: Tayassuidae) en el Parque Nacional Corcovado, Costa Rica. Rev. biol. trop [online]. 2000, vol.48, n.2-3, pp. 689-702. ISSN 0034-7744.
The diet of the white-lipped peccari Tayassu pecari was studied from July 1996 to April 1997 in Corcovado National Park, Costa Rica, through fecal analysis and direct observations. The feces consisted of 61.6% fruits, 37.5% vegetative parts, 0.4% invertebrates and 0.5% unidentified material. These proportions are similar to those reported for white-lipped peccaries diet in South America, but the species consumed were different. In Corcovado, the white-lipped peccary fed on parts of 57 plant species (37 of them fruits). Moraceae was the most represented family. In contrast, the diet of the Peruvian Amazon peccary primarily consists of plant parts (Arecaceae). Costa Rican peccary diet consisted of vegetative parts from Araceae and Heliconaceae. Direct observation showed that peccaries spent 30% of feeding time rooting. Samples taken from rooting sites suggest that peccaries fed on earthworms. Diet differed between months, seasons and habitats. They ate more fruits in coastal and primary forests and more vegetative parts in secondary forest. In the months Octubrer and November the consumption of vegetative parts exceeded fruit consumption.
Keywords : Seasonal diet; fecal analysis; direct observations; Tayassu pecari; white-lipped peccary; rain forest; Costa Rica.


CLC bio Part of $7.8 Million EU STATegra Grant to Develop Integral Analysis Platform for Epigenetics
12/12/2012 9:24:53 AM
AARHUS, Denmark--(BUSINESS WIRE)--Today CLC bio announced the participation in the European FP7 project, STATegra, and receives 1.3 million US Dollars out of the total $7.8M project budget. STATegra aims to develop a user-friendly integral analysis platform for different omics data that is capable of providing a more efficient use of genomics technologies. As a first, this project will generate and integrate data obtained in proteomic, metabolomic and epigenomic experiments. "One of the big challenges today is going past the raw sequence data and getting to grips with the complexity of epigenetic processes - how, when, and why are certain genes switched off or expressed?" states Senior Bioinformatics Scientist at CLC bio, Dr. Michael Lappe, and continues, "By working together with leading experimental researchers and using our in-house competences in world-class software-engineering, we aim to leverage a framework which makes this extremely complex network biology understandable. Ultimately our tools will facilitate the translation of massive amounts of data into useful insights that can be applied in clinical settings."