text:
The HexSimPLE Scenario
Each of HexSimPLE's Leslie matrices is of dimension 3, corresponding to a stage-stratified population of juveniles, sub-adults, and adults. Users can easily simulate a 2-stage population by setting the sub-adult and adult parameters the same. HexSimPLE would have to edited a bit to add extra stage classes.
The HexSimPLE model has been designed with the intent that the population vector represents a post-breeding census. This means specifically that the fecundity terms used to simulate matrix multiplication will be discounted by the corresponding survival rates. For example, the stage-2 reproductive output will be computed as (number of stage 2 individuals) x (survival rate for stage 2 individuals) x (fecundity of stage 2 individuals). Of course, the number of individuals, the survival rate, and the fecundity, will vary from place to place, and from time to time.
To construct a custom application from the template, users must supply a habitat map, and a map indicating where each Leslie matrix is to be located. Optionally, users may also supply separate maps of spatially distributed stressors impacting survival and reproduction, and a map of movement barriers. These three optional maps must exist in the workspace, but the stress maps can consist entirely of zeros, and the barrier map need not include any barrier segments. All of these maps may be dynamic time series except for the map designating the matrix locations, which must be static. Users must also assign values to 16 parameters, and customize the Movement events. But otherwise, it should not be necessary to modify the HexSimPLE population parameters or the event sequence.
Users should find the process of constructing a HexSimPLE model takes dramatically less effort than the development cycle associated with a traditional HexSim simulation. In HexSimPLE, the model structure is already complete, and it is only necessary to supply some maps, specify a limited number of parameter values, and customize movement behavior. Nevertheless, customizing HexSimPLE to meet your needs will require some familiarity with HexSim itself, and the documentation here assumes a basic working knowledge of the overall program.
Spatial Data
The first step in customizing the HexSimPLE template for a new project will involve the construction of a workspace that fits the spatial data to be used. Once a new workspace is developed, then all of the workspace spatial data will have to be re-created. The discussion below should help users with this initial step. The actual workspace construction process is described in the User's Guide, and is not repeated here.
The Matrices Map
The Matrices Map shown above consists of 99 patches. Its will make HexSimPLE distribute 99 Leslie matrices across the landscape. The zero-valued background hexagons will be excluded from HexSimPLE simulations, meaning matrices will not be located in these areas, and dispersers will not be allowed to move to them. The Leslie matrices will not extend into zero-valued hexagons, and individual dispersers will be restricted from entering these hexagons.
The HexSimCommandLine.exe tool (supplied with HexSim) contains two utilities for constructing patch maps similar to those displayed here. The first is called using the flag generateHexPatchMap, and it constructs a Hexmap of hexagonal-shaped patches. The second is called using the flag generateRectanglePatchMap, and it constructs a Hexmap of rectangular patches. These tools will only add full-size patches. The Matrices Map shown here was developed using a stand-alone algorithm called build_hexmap_hexagons.c that is available from the Utilities section of this website. An analogous tool there called build_hexmap_blocks.c can be used to develop a space-filling map of rectangular patches. The Matrices Map included with HexSimPLE was further modified when some perimeter patches were removed, and the patch IDs were randomized.
The Matrices Map must not be a time series. That is, it must include a Hexmap only for time step 1.
The Habitat Map
HexSimPLE habitat maps may be binary, identifying only habitat versus non-habitat areas. In such cases, the habitat hexagons should be scored 100. The Habitat Map may be a dynamic time series.
The Habitat Map bundled with HexSimPLE is artificial, and was developed from the image named Jackson Pollock 4.bmp, which is available in the Bitmaps.zip download on the Accessories page of this website.
The Stress Maps
HexSimPLE uses separate spatial data sets to capture the impact of spatially-distributed stressors on survival and fecundity. These Hexmap series are called Stress Map Survival and Stress Map Fecundity. The process used to create the stress maps bundled with HexSimPLE is described in the Build Patch Map and Build Stress Maps sections of this website.
The stress maps that come with HexSimPLE are artificial, as are all of the spatial data included in this workspace. Users developing their own applied HexSimPLE models will want to replace the patch map with, for example, a map in which the patches delineate natural areas and agricultural fields. Then, the stress maps might provide a spatial depiction of pesticide impacts on species' survival and reproductive rates, which could vary by chemical, application rate, and application timing. Many other examples could be developed, but the main point is that HexSimPLE gives you a straightforward mechanism for imposing any spatially distributed disturbance regime on a population of interest.
Zero-valued hexagons in the Stress Map will not impose any stress upon the population. Therefore, turning of one of the disturbance processes is done by setting the corresponding stress map's hexagons all to zero. The Stress Map Survival Hexmap bundled with HexSimPLE provides an example.
The Movement Barriers Map
The HexSimPLE Movement Barriers map makes it easy to incorporate the impacts of movement barriers on a simulation. The Movement Barriers map bundled with HexSimPLE provides a simple illustration of HexSim barrier maps. In this map, all of the barrier edges are associated with a single category pair, and they impose a 10% probability of mortality and 90% probability of deflection. The barriers were drawn so as to coincide with features found in the Habitat Map, but were then adjusted to fall along the patch boundaries. The HexSimPLE scenario expects its workspace to include a Movement Barriers map, but users who have no need for movement barriers can just simply use an empty barrier map.
In HexSimPLE simulations, barriers that subdivide patches will exhibit a counter-intuitive property. Such barriers will impact individuals moving throughout the landscape exactly as anticipated. But the Propagation event that creates these dispersers will place them at random locations within their starting patches. Dispersers leaving a patch bisected by a barrier may begin their movements from either side of the barrier. Thus for emigration, patch-bisecting barriers will appear permeable, while for immigration they will function normally. The solution to this complication is to ensure that HexSimPLE barriers are always placed along patch edges, or between patches (if the patches are not space-filling).
The Population Parameters
The only part of HexSimPLE's Population Parameters that users should need to modify are the 16 accumulators that hold model parameters. These special accumulators have names that begin with the string [+], which makes them easy to identify. The 16 HexSimPLE parameters are described below. In the Population Parameters Traits tab, these accumulators are listed in alphabetic order. Here, they are instead organized by topic.
[+] Initial Patch Population
This sets the number of individuals that will be added to each patch when HexSimPLE starts up. These individuals will all be placed into stage class 2 (adults). Remember, they are not actual HexSim individuals. They are really just a value in a stage matrix, because HexSimPLE is a population model.
[+] Density Exponent
HexSimPLE matrices' survival and reproduction rates decline as population density increases. Density is measured relative to each patch's carrying capacity, which is in turn dependent on habitat quality and a user-defined Per-Hexagon Carrying Capacity parameter. The Density Exponent parameter controls the shape of the curve relating population density to the reduction in vital rates (see the section below on demography for a more thorough explanation). The Density Exponent will typically fall in a range between roughly 1.0 and 3.0. The amount and spatial distribution of density-dependent feedback affecting the population's vital rates can be quite sensitive to this parameter value.
[+] Per-Hexagon Carrying Capacity
This is the carrying capacity of a single atomic HexSim hexagon with a score of 100. Remember that each fully-resolved hexagonal patch in the bundled Matrices Map contains 91 of these atomic hexagons. Thus, a patch of 91 hexagons, for which each hexagon had a Habitat Map score of 100, would have a carrying capacity of 455. Smaller patches, or patches composed of hexagons with lower Habitat Map scores, will have a lower carrying capacity. HexSimPLE's density dependence model will tend to drive excessively large patch populations back down to their carrying capacity. Because the Habitat Map can by temporally dynamic, any given patch's carrying capacity can change over time.
[+] Min Density Coefficient Fecundity
This parameter sets the smallest value allowed for the density coefficient applied to fecundity. As a patch's population approaches zero, this coefficient will increase to 1.0. As a patch's population reaches carrying capacity, this coefficient will decrease to its minimum value. The reproductive rates are multiplied by the density coefficient, so the rates will be highest when the coefficient is 1.0. Setting this parameter to 0.0, for example, stipulates that the reproductive rates in patches at or above carrying capacity will be reduced to zero. The valid range for this parameter is [0 - 1].
[+] Min Density Coefficient Survival
This parameter sets the smallest value allowed for the density coefficient applied to survival. As a patch's population approaches zero, this coefficient will increase to 1.0. As a patch's population reaches carrying capacity, this coefficient will decrease to its minimum value. The survival rates are multiplied by the density coefficient, so the rates will be highest when the coefficient is 1.0. Setting this parameter to 0.5, for example, stipulates that the survival rates in patches at or above carrying capacity will be reduced by 50%. The valid range for this parameter is [0 - 1].
[+] Percent Stage 0 Dispersing
This parameter is used to determine how many stage class 0 individuals will disperse each time step. This number of individuals will disperse, but this does not guarantee they will leave their patch. Because HexSimPLE is a population model, there are normally no actual individuals to move. So HexSimPLE temporarily creates dispersers when needed, and moves those special individuals. After dispersal, these individuals are absorbed into the matrix associated with their ending patch. The valid range for this parameter is [0 - 100].
[+] Percent Stage 1 Dispersing
This parameter is used to determine how many stage class 1 individuals will disperse each time step. This number of individuals will disperse, but this does not guarantee they will leave their patch. Because HexSimPLE is a population model, there are normally no actual individuals to move. So HexSimPLE temporarily creates dispersers when needed, and moves those special individuals. After dispersal, these individuals are absorbed into the matrix associated with their ending patch. The valid range for this parameter is [0 - 100].
[+] Percent Stage 2 Dispersing
This parameter is used to determine how many stage class 2 individuals will disperse each time step. This number of individuals will disperse, but this does not guarantee they will leave their patch. Because HexSimPLE is a population model, there are normally no actual individuals to move. So HexSimPLE temporarily creates dispersers when needed, and moves those special individuals. After dispersal, these individuals are absorbed into the matrix associated with their ending patch. The valid range for this parameter is [0 - 100].
[+] Percent Stochasticity Fecundity
This parameter determines how much the reproductive rates will vary from one time step to the next. Each time step, this value will be converted into a coefficient that varies between 1-x and 1+x, where x = (Percent Stochasticity Fecundity / 100). This coefficient will then be used to modify the matrices' reproductive rates.
[+] Percent Stochasticity Survival
This parameter determines how much the survival rates will vary from one time step to the next. Each time step, this value will be converted into a coefficient that varies between 1-x and 1+x, where x = (Percent Stochasticity Survival / 100). This coefficient will then be used to modify the matrices' survival rates.
[+] Stage 0 Fecundity
Stage 0 Fecundity specifies the number of female offspring per Stage 0 female. HexSimPLE is a females-only model, so this parameter really specifies the juvenile reproductive rate. This value will be modified due to density dependence, disturbance, and environmental stochasticity. HexSimPLE assumes the population vector represents a post-breeding census, so this fecundity term will be discounted by the stage-0 survival rate.
[+] Stage 1 Fecundity
Stage 1 Fecundity specifies the number of female offspring per Stage 1 female. HexSimPLE is a females-only model, so this parameter really specifies the subadult reproductive rate. This value will be modified due to density dependence, disturbance, and environmental stochasticity. HexSimPLE assumes the population vector represents a post-breeding census, so this fecundity term will be discounted by the stage-1 survival rate.
[+] Stage 2 Fecundity
Stage 2 Fecundity specifies the number of female offspring per Stage 2 female. HexSimPLE is a females-only model, so this parameter really specifies the adult reproductive rate. This value will be modified due to density dependence, disturbance, and environmental stochasticity. HexSimPLE assumes the population vector represents a post-breeding census, so this fecundity term will be discounted by the stage-2 survival rate.
[+] Stage 0 Survival
Stage 0 Survival specifies the rate at which juvenile individuals transition into subadults. The quantity (1.0 - [+] Stage 0 Survival) is the juvenile mortality rate. This value will be modified due to density dependence, disturbance, and environmental stochasticity.
[+] Stage 1 Survival
Stage 1 Survival specifies the rate at which subadult individuals transition into adults. The quantity (1.0 - [+] Stage 1 Survival) is the subadult mortality rate. This value will be modified due to density dependence, disturbance, and environmental stochasticity.
[+] Stage 2 Survival
Stage 2 Survival specifies the rate at which adult individuals remain in the adult class. The quantity (1.0 - [+] Stage 2 Survival) is the adult mortality rate. This value will be modified due to density dependence, disturbance, and environmental stochasticity.
The Event Sequence
The HexSimPLE structure is conceptually straightforward. Some of the model mechanics may appear complex, but that is mostly a consequence of tricking an IBM into behaving like a linked array of population models. The event sequence is broken into distinct parts, using five separate top-level Event Groups. Each of these event groups is discussed below.
Users should not need to change anything about the event sequence except for the three Movement event's Dispersal tab Path Length and Percent Auto-Correlation parameters. These parameters will need to be modified for every simulation. The other parameters associated with movement should not need to be altered by users.
There are also some simple changes users can make to speed up HexSimPLE simulations. These include toggling off any of the dispersal event groups that correspond to stage classes that will not be moving, and toggling off the Construct Output Maps event group when its simulation products are not of interest.
Initialize Simulation
This event group is set to only trigger on time step 1. A Patch Introduction event creates the initial matrix population, one per patch. This is followed by three Accumulate events that record each patch's size, initialize each patch's stage matrix, and set each patch's initial carrying capacity. The Patch Size accumulator is not used in the simulation (every other accumulator is), but is included anyway because patch size is useful information to have easy access to.
Conduct Movement
The Conduct Movement event group consists mostly of three other Event Groups that perform dispersal separately for the three stage classes. These three procedures are bracketed by Accumulate events that perform some simple bookkeeping. The three dispersal event groups are almost identical, so users interested in their mechanics need only examine one in detail. Because these dispersal event groups take time to execute, users may want to toggle them off if their corresponding stage classes are not dispersing.
What makes the dispersal event groups complicated is that they must create, move, record, and destroy new HexSim individuals in order to simulate movement within the overall population model construct. The population that you are actually tracking in a HexSimPLE simulation is a collection of vectors (one per patch), not individuals. But when movement is to be simulated, some of these vector individuals need to be temporarily converted into real HexSim individuals. Then they must move, and finally they must be absorbed into the population vectors associated with the patches they end up in.
First, an Accumulate event computes the stage-specific number of dispersers that will depart from each patch. This value is based on the number of individuals each patch holds that are in the specified stage class, and on the Percent Dispersing model parameters. Then a Propagation event adds the specified number of individuals to each patch. This is followed by a Transition event that labels the newly created individual by assigning them the appropriate stage class. A second Accumulate event is used to set an accumulator to 1.0 for these individuals, and zero for everyone else. This is important for the Generated Hexmap event described below.
Next, a Movement event makes the newly created individuals disperse. Individual dispersal paths are influenced by quality of habitat in the Habitat Map, but they are excluded from zero-valued hexagons in the Matrices map. There is no repulsion in the movement behavior, but there is an attraction to higher-valued habitat hexagons. These dispersers may or may not end up leaving their patches. A Generated Hexmap event then identifies each dispersing individual's final location and increments that hexagon's value using the accumulator that was above set to 1.0. Dispersers are prohibited from entering zero-valued hexagons in the Matrices Map (see the Population Parameters Properties tab), so they are guaranteed to end up in a patch. The Generated Hexmap provides a way of communicating these ending locations back to the patches they stop in. A third Accumulate event uses the Generated Hexmap to increment each patch's population by the number of dispersers that ended up settling there. Finally, a Survival event removes the dispersers.
The Propagation event that creates the dispersers takes advantage of the Locate individuals within Explored Area feature. When this check-box is checked, newly propagated individuals will be located randomly within their mother's explored area. The use of this feature in HexSimPLE ensures that dispersers will depart from a random location within their patch. Otherwise, each individual would depart from its parent's location. In this case, the parents are located in the patch centers.
While it is doing all of this, the dispersal event groups also keep track of the number of emigrants and immigrants, on a patch-by-patch basis. This information is used to construct output Hexmaps that illustrate some of the population dynamics.
Perform Demography
HexSimPLE demography is broken into two parts. First, an Event Group called Set Vital Rates is used to assign values to each matrix element, separately for each patch. A subsequent Event Group called Matrix Multiplication multiplies each patch's matrix by its stage vector, producing a new stage vector.
Leslie matrices are composed of fecundity and survival terms. In HexSimPLE, the vital rates entered as parameters are considered the maximum possible values that can be experienced in an average year. These values are modified by three coefficients:
The plot to the right shows this relationship graphically for three values of alpha. The x and y values in the equation correspond to the x- and y-axes in the plot. Decreasing alpha lowers growth rates because the density impacts are experienced at smaller population sizes. As patch density ranges from 0 to carrying capacity, x ranges from 0 to 1. As x ranges from 0 to 1, y ranges from 1 to 0. When y is 1, the density coefficient will also be 1. When y is 0, the density coefficient will be set to its minimum value (either Min Density Coefficient Fecundity or Min Density Coefficient Survival). As population density increases, the rate at which y travels between 1 and 0 is determined by the Density Exponent parameter.
The stress coefficient increases from 0 to 1 as the mean value of the portion of a stress map falling under a patch decreases from 100 to 0. The stochasticity coefficient varies symmetrically around 1.0, and is the only one that can increase the value of a vital rate.
The Matrix Multiplication Event Group essentially multiplies each patch's population vector by its Leslie matrix to obtain an updated population vector. The population vectors hold the number of stage class 0 (juvenile), stage class 1 (subadult), and stage class 2 (adult) individuals. At this point, the patches' Leslie matrices have already been modified by the density, stress, and stochasticity coefficients.
The three remaining Data Probe events write the fecundity coefficients and final values, the survival coefficients and final values, and several measures of population size and productivity. These data will be stored in three different CSV files, within the simulation results.
Get Output Map Data
HexSimPLE simulations construct 6 separate output Hexmap time series that display:
The data used to develop these maps is generated in other parts of the simulation. For example, the Perform Demography event group generates the births and deaths tallies, and the Conduct Movement event group tracks emigration and immigration. This Event Group gets these data ready for the Generate Hexmap events that actually construct the output imagery.
A HexSim feature made constructing the productivity maps a bit complicated. When HexSim displays maps that are part of a time series, the color scale is set to the global minimum and maximum values. This can interfere with the display of a time series in which some maps have small hexagon scores (in magnitude), and other maps have large scores (positive or negative). The maps with small scores will be displayed using just a portion of the color scale. For example, suppose the color ramp being used goes from blue-yellow-red. And suppose a Hexmap time series contains two maps, the first having values between -1 and +1, and the second having values between -10 and +10. When the second map is displayed, the full spectrum of colors will be observed, with the hexagons scored -10 shown in blue and the hexagons scored +10 shown in red. But when the first map is displayed, all the hexagons will appear in shades of yellow because they all fall roughly in the center of the range -10 to +10.
The map of cumulative population size doesn't suffer from this problem because the Generated Hexmap event that creates it uses the scaling tool to ensure that every individual map ranges between 0 and 100. But this scaling tool isn't useful when the hexagon scores are both positive and negative. So some extra machinery was developed for HexSimPLE that automatically re-scales the two cumulative productivity Hexmap time series. For those interested in the details, HexSimPLE is tracking the positive and negative cumulative productivity scores separately. This allows the two ranges of scores to be re-scaled independently, and then added back together later on when the actual Hexmaps are written to the results.
The maps of population density and cumulative population density are useful when the patches owned by individual matrices have different sizes. These maps are generated by dividing the population size, or cumulative population size, by the individual patch areas (in hexagons).
Generate Output Maps
This Event Group contains 4 Generated Hexmap events that actually create HexSimPLE's output imagery. As described in the preceding section, these events would all be extremely simple if no attempt had been made to re-scale the productivity Hexmaps. This can be seen in the two events that map population size, which are both quite straightforward.
The two Generated Hexmap events that map productivity have to do a bit more work. They round and then re-scale the positive and negative portions of the maps separately, and then sum the two parts. This technique produces a time series of productivity Hexmaps in which every individual map has hexagons ranging between -100 and +100. When displayed, for example, in the Simulation Viewer tool, these productivity maps will provide the maximum possible contrast.
Post-Breeding Census versus Pre-Breeding Census
HexSimPLE emulates matrix multiplication, though it does this separately within each habitat patch, and adds a spatially-explicit individual-based dispersal process for additional realism. For simplicity, HexSimPLE assumes the sub-population in each patch is composed of 3 distinct stage classes. The numbers of individuals in each stage class is represented by a vector with 3 elements, and a dimension-3 Leslie matrix is used to project the stage vector for time T forward to time T+1.
Matrix multiplication, used for population projection, necessitates making the assumption that survival, reproduction, and the shifting of individuals between stage classes can be be collapsed into a single event per time step. There are three processes that take place simultaneously when a Leslie matrix multiplies a population vector to produce a new population vector (representing the subsequent time step). The first process is reproduction, which is controlled by the top row of the matrix. The second process is survival, which is controlled by the remaining rows in the matrix. The final process captures the aging or growth of individuals, causing them to shift into subsequent stage classes. Importantly, new individuals added to the population by the reproduction process should experience mortality. But if the top row of the Leslie matrix contains only fecundity terms, then the newborn individuals will not experience any mortality whatsoever until their second year of life.
When projection matrices (including the Leslie matrices discussed here) are constructed from empirical data, this issue of mortality in the first year of life must be addressed. In most cases, this done using one of two alternative approaches. The difference between these approaches stems from the interpretation of the stage class vector used to represent population size. When researchers census populations exhibiting pulsed breeding events (e.g. one reproductive event per year), they typically perform this census either just before the breeding pulse, or just after the breeding pulse.
When a census is taken just before the breeding pulse, the youngest individuals will have been alive for almost a full time interval (these individuals were born in the previous time step, so now they are about to turn one). There are no true newborns represented in such a census. The youngest individuals in the census represent actual individuals who by then will have already experienced the mortality expected for stage class 0. This is referred to as a pre-breeding census.
When the census is taken just after the breeding pulse, the youngest individuals will be at the very beginning of their life. The youngest individuals in the census represent actual individuals who have not yet have experienced the mortality expected for stage class 0. This is referred to as a post-breeding census.
The decision about whether the projection matrix you construct should reflect a pre-breeding or post-breeding census should be made based on the empirical data being used to estimate the vital rates. The post-breeding structure is commonly encountered and a bit more intuitive, so HexSimPLE model has been assembled to simulate a post-breeding census.
The figures below illustrate the differences between 3-stage Leslie matrices developed for post-breeding and pre-breeding censuses. In both cases, the life cycle involves just reproduction, survival, and transitioning between stage classes, since that is specifically what projection matrix multiplication accomplishes. The differences between the two cases stem from the timing of the census. In the post-breeding census case, the census is conducted just after reproduction. Thus the life cycle can be thought of as consisting of the steps:
In the pre-breeding census case, the census takes place just before reproduction. Thus the life cycle can be thought of as consisting of the steps
In a post-breeding census, we count the population just before survival. Then the first computation involves multiplying each element of the just-measured stage vector by the corresponding survival rate. This step is represented in the figure above by the stage vector with the yellow, blue, and green cells. Next, the reproductive output of the surviving individuals is summed and placed into the juvenile location in the new stage vector (see the yellow cell in the top matrix, above). Finally, the surviving juveniles (stage 0 individuals) are shifted to the subadult location in the new stage vector, and the surviving subadults and adults (stages 1 and 2) are summed and placed into the adult location in the new stage vector. This last step is indicated by the blue and green cells in the top matrix, above.
For a post-breeding census, the population's transition between time steps can be captured using a Leslie matrix with the structure shown at the bottom of the figure.
In a pre-breeding census, we count the population just before reproduction. The first computation involves multiplying each element of the just-measured stage vector by the corresponding reproductive rate. These reproductive outputs are indicated in the figure above by the stage vector with the yellow, blue, and green cells. Next, the total number of offspring is obtained by summing the output from each stage class (the yellow, blue, and green cells in the top matrix, above). Then, individuals are transitioned into the subsequent stage classes. The new juveniles are assigned to stage-0, the previous time step's juveniles are assigned to stage-1, and the previous time steps's subadults and adults are shifted into stage-2. Finally, the stage-0 mortality rate (S0) is imposed upon the new juveniles, the stage-1 mortality rate (S1) is imposed upon the new subadults, and the stage-2 mortality rate (S2) is imposed upon the adults. Note that the survival terms (shown in red in the above figure) are not arranged in the same order as the survival terms in the post-breeding Leslie matrix.
For a pre-breeding census, the population's transition between time steps can be captured using a Leslie matrix with the structure shown at the bottom of the figure.
Note that the Leslie matrices derived based upon post-breeding and pre-breeding assumptions will produce exactly the same population growth rates. Their lambda values will be identical.
Customizing and Running HexSimPLE
To construct a custom application from the template, users must supply these items:
The simulation parameters are described in the section above titled The Population Parameters.
Users must also generate three additional maps:
But the stress maps can consist entirely of zeros, and the barrier map need not include any barrier segments.
All of the maps listed above may be dynamic time series except for the patch map, which is used to designate the matrix locations.
In addition, users will want to customize the Movement events, of which HexSimPLE has three. However, many HexSimPLE applications will not use all three Movement events. When a Movement event is modified, only the Path Length and Percent Auto-Correlation parameters should be changed.
When you download HexSimPLE, you will have examples of all the input maps and parameter values. This should help you become familiar with what is needed to develop your own custom application of the model.
Note that placing the HexSimPLE template within a new workspace is likely to cause the Maximum Range Area parameter to change. This value is stored in the XML file as a number of hectares, but its representation in hexagons is a function of the workspace's hexagon size. The HexSim template uses a Maximum Range Area of 1 hexagon, and a Maximum Range Span of 0. While these parameters will not affect the simulations (HexSimPLE individuals are always floaters), it is minimally-confusing if they are assigned simple null values.
Analyzing HexSimPLE Results
As delivered, the HexSimPLE template is highly stochastic and the results will differ considerably from replicate to replicate. If you run a single iterate of this model, the results you obtain may be quite different than those depicted below.
HexSimPLE simulations produce the following outputs:
The Data Probe metrics are all contained in a folder called Data Probe that resides within the simulation results folder. The population size metrics are in a file called "Matrices-[Perform Demography] Census Population-accumulators.csv". This CSV file has the following data columns:
For each replicate and time step, there will be a row for every patch in the patch map. This file can be used to generate the basic population size data that you will want to examine. But before a plot can be made of population size vs. time step, the data in this file corresponding to each unique replicate-time step combination must be summed. This can be done easily using the program called read_data_probe.c that is available from the Utilities page of this website.
At this point, it is worth mentioning that there is no easy way to produce a HexSim census that would package this information in a ready-to-plot format. This is because the individuals in HexSimPLE are just objects that store counts representing the number of each patch's juveniles, sub-adults, and adults. So there are no actual juveniles, sub-adults, or adults to census, except momentarily when movement is being conducted.
The four generated spatial data time series produced by HexSimPLE simulations display population size and productivity. One Hexmap series shows the current population size at each time step. Another series shows the cumulative population size. Both are re-scaled to ensure that the range of values always falls between 0 and 100. Both of the productivity maps display cumulative values. One is constructed using births - deaths, while the other is constructed from emigration - immigration. At steady-state, these measures of productivity will be essentially identical. When a model is far from steady-state, they can differ significantly. Both of these Hexmap time series are re-scaled so that every individual map ranges between -100 and +100. The two Hexmaps displayed above are showing cumulative population size (top) and emigration - immigration (bottom).
Finally, the log file produced by HexSimPLE simulations can be used to generate reports and tallies, and to drive the Simulation Viewer. Given the structure of HexSimPLE, the Dispersal Flux tally will probably be the most useful post-simulation product that can be generated from the log file. But using the Simulation Viewer to visualize movement should also be extremely informative.
Resources > Workspaces >


text:
Let us know when your receive great advice so we can thank our lawyers and point others with similar questions in the right direction.Got it!
I was forced to marry in India in 2009 according to Hindu traditions though it was never registered. I went to my office which was in Delhi as soon as the rituals ended alone. The girl went back to my hometown with my parents where she stayed for about a month. We never met before or after the wedding. I kept trying to go for mutual separation but nothing worked I came to US H1B visa in 2011 n went India again in 2013 to resolve matters but their family didn't turn up In September 2013 I married another girl n brought her on H4 visa. Now the girl n family are threatening my parents and had filed a case against me on sections 323, 504 n 506 of Indian Penal Court. Is there a way this issue be resolved in US? Going to India is very unsafe for me as I keep receiving threats they r influencial
You need to get an attorney that is licensed in India. To attempt a divorce in the US will make things WORSE than ever ... it could result in the presumption that your current 'marriage' isn't valid.
PROFESSOR OF IMMIGRATION LAW for over 10 years -- This blog posting is offered for informational purposes only. It does not constitute an attorney-client relationship. Also, keep in mind that this is an INTERNET BLOG. You should not rely on anything you read here to make decisions which impact on your life. Meet with an attorney, via Skype, or in person, to obtain competent personal and professional guidance.Ask a similar question
Your situation raises multiple scenarios that must immediately be addressed:
1. You must immediately seek to divorce you from your first wife. You are still be considered as being married to her, if yours was a valid marriage according to Indian Law and not only to Hindu traditions.
2. Your residing in the US on a work visa gives you the right to file for divorce in US courts. That's why would immediately do. Higher and experienced family law attorney in your area to initiate the proceedings.
3. Your current marriage your second spouse is invalid and can be considered as bigamous. Her H-4 status is in jeopardy and so is her permission to legally remain in the US. Consult with immigration attorney about this as soon as possible.
Kindly be advised that the answer above is only general in nature cannot be construed as legal advice, given that not enough facts are known. It is your responsibility to retain a lawyer to analyze the facts specific to your particular situation in order to give you specific advice. Specific answers will require cognizance of all pertinent facts about your case. Any answers offered on Avvo are of a general nature only, and are not meant to create an attorney-client relationship.Ask a similar question
If you don't want to put your current wife's immigration status in jeopardy, it will be best to contact a family law attorney in India to nullify your first marriage through annulment.
Thank you
Very strange to deal with that without a good legal counsel.
You probably won't find an expert on the Indian Penal Court or Hindu traditions on this site as we are almost all U.S. immigration attorneys. You should look into if the first marriage was even valid, and/or how to annul it since it apparently wasn't even consummated. The second marriage was probably invalid IF the first was. You should contact a family/immigration attorney with experience in filing international divorces - it IS possible to file an international divorce from the U.S. but you should find an expert.
Gunda J. Brost Brost Law Office This advice does not form an attorney-client relationship and is merely informative. It should not by itself be relied upon to address a legal concern.Ask a similar question
Thank you for marking the answers you received as helpful. You can perhaps find someone by using the avvo "Find a Lawyer" tool. Or, contact a divorce attorney in India directly.
The lawyers on this site cannot help you with your ultimate question, but we can provide you some guidance on what to do. THE most important question is whether you had a legally-recognized marriage to your first wife under the laws of India. If so, you must divorce her and remarry your second wife. Your first marriage to your second wife is not valid if you were still married to the first girl.
If under the laws of India you were not legally married to your first "wife", then you should have nothing to worry about - though you may want to get a legal opinion stating and explaining that in case the issue comes up again.
You should always consult with an experienced immigration attorney to make certain that the advice you received is appropriate for your particular immigration case.Ask a similar question
The first marriage was not legally registered. It was according to Hindu rituals.
That does not answer the question completely. There are some countries that recognize a marriage as legally in force if there was a traditional religious ceremony even if it was not actually registered. You need to find out how the Indian law views a traditional Hindu marriage that was not registered (and may not have been consummated?). As my colleagues pointed out too, you really need to talk to an Indian lawyer who will give you a correct answer, not just speculation.
Hindu traditional marriage is lawful (lack of registration does not change anything) although there can be scenarios when such a marriage can be questioned. Therefore, you must contact an experienced indian lawyer who could handle your first marriage issue amicably for you in Indian court. Trying it first in U.S. court can land you in a bigger mess. Marriage laws are same all over India and do not change from state to state like in U.S. Consult with experienced lawyer anywhere in India would give you the same advice. contact me privately if you need referral. Best Wishes.
My answers are for general information only, NOT A legal advice because these are not tailored to your specific situation. Contact an Immigration Attorney if you need legal advice.Ask a similar question
Kindly provide me any referral if you can.. Or your contact details. Thank you
my profile should be available at this website but if not please visit my website www.haranlaw.com or call (317) 660-6174 or email: firstname.lastname@example.com
You may be able to obtain a divorce in the United States, but you must serve your wife in India pursuant to the treaty provisions that spell out what must be done. You may want to contact Attorney Sanjay Bhatt who has an office in Columbus and who is involved in Indian cases on a regular basis.Ask a similar question
Sign up to receive a 10-part series of useful information and legal advice about the divorce process.
Post a free question on our public forum.Ask a Question
- or -
Search for lawyers by reviews and ratings.Find a Lawyer

subset: commoncrawl


text:
katherine Brankin
I grew up on Tolstoy and Dostoevsky, but matured on Ian Fleming. Already being an accomplished designer and blogger, writing fiction became just one more outlet for my imagination. The characters and their incredible stories just appeared in front of me one day and I took a chance.
I live in the North Shore suburbs of Chicago with my family and two nocturnal pets that keep me company when I write at odd hours of the night fueled by large quantities of hot tea and antipasto platters.
Enjoy this glimpse into the world of Catalina. Come back often, her world is ever expanding.
– With love, Katherine
For the latest news, happenings, and photos, follow me on Facebook, Instagram, Twitter, and Pinterest, or read my blog Driving Master Danny.


text:
Popular movies week 5 May 1907
Here's the list of the most popular movies in the week 05/May - 11/May - 1907. Do you remember Violante by Narciso Cuys or Fanfan la Tulipe starring Felipe de Jess Haro ?
What else happened in that week of 1907?
Discover what the world looked like on:


text: Major categories for Khan Academy can be found here: Khan Academy Subjects Badges Contests KA Users Other Khan Academy content ☀ All Khan Academy content is available for free at: www.khanacademy.org Retrieved from "http://kaos.wikia.com/wiki/Khan_Academy_Directory?oldid=11149" Ad blocker interference detected! Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers Wikia is not accessible if you've made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected. Categories: General KA Menu pages


text:
…when I set off for Bosworth Battle Centre to give my talk on Wednesday evening, in their autumn series on Richard III. The wind was blusterous, the rain was episodic, and the highways were dark and windy as you begin to realise how far from anywhere the Battle Centre feels to be. Much further than on a sunny, summer day. But not so blusterous, rainy or dark as to deter a fair couple of dozen people from turning up to hear me!
My title was – "With dignity, honour – and peace". That last word added into our strap-line to make a point – that over the last couple of years there's been anything but peace in the tone of many of the comments addresses to us – or at us – in letters, emails, social media and general 'out there' comments. it's a truism to say that King Richard's story generates strong emotions. it's a challenge to remain steady in the eye of that storm.
A talk isn't the same turned into print, so despite the entreaties of one or two on the friendly Richard in Leicester Facebook page, I'm not going to reproduce it here, but I will outline the main themes behind the title.
Dignity – is intended to signify what we would aim to offer to any and all human remains that might be committed into our charge – royal or commoner. It's what, as human beings, we owe each other, and its absence can be seen wherever people treat other people as disposable objects on the way to their own personal gratification.
Honour – is what is owed especially to one who was, in his life, King of England. And although he is no more of this world, those mortal remains deserve to be treated with honour, in recognition of what monarchy means in itself. And you needn't be a convinced royalist to understand that every society is in need of governance and authority, and without it, and the honour due to it, we rapidly all pay the price. Unless, that is, you really believe in anarchy – literally the 'absence of all rule'.
Peace – this story is full of the opposite of that. From the ever-so-real Cousins' war – where lives were lost or wrecked in abundance – to the largely media-fuelled 'York v Leicester' 'battle' over the eventual resting place of the remains. Conflict may be an inevitable part of being human – but the way we conduct ourselves even in conflict still says a lot about the sort of people we really are. anyone can be good to their friends: it's how we treat those we may regard as opponents that tells the truer tale.
Well dark and stormy night it ay have been, but it was a warm and receptive audience. Including three bosworth Centre staff, and one who works in Leicester's King Richard III Centre, all of whom were keen to hear what they could regard as 'authentic' answers to some of the many questions visitors ask them about the Cathedral and what we're about.
The image at the head of this story tells its own tale. The statue of King Richard III in the foreground, occupying much attention at this moment. There Cathedral streaky n the background. It's been here for centuries from before Richard lived and died. All being well, it will be here for as long again. It may not be the first thing pople look for in this story. But it stands foursquare behind it, living by and proclaiming the Christian faith that Richard lived by, and that we, at any rate, still do today. That's not particularly catholic or protestant, not especially C of E or RC, but simply Christian.
That's what I was trying to say, one dark and stormy night when only a hardy few were listening.


text:
ok here goes as we sat down my feet stuck to the floor (gross i thought) then there was just the place mats ok i can deal but put my arm in what i guess was the same stuff on the floor so now my arm was sticky. we were asked what we wanted to drink 1 was water 2 were pepsi and 2 were sprite well of corse mine was sooooo sweet and instead of clear it was yellowish so then as we are looking at the menue my daughter found another sticky spot on the oh soo clean table we just put a napkin over it that we had to get off another table then the waitress took our order no problems she brought out our salads and went to walk away we had to stop her to ask for silver wear and napkins 25 minutes go by food comes out yay ! well my veal parm was gross it was supposed to be real not regurgitated (veal patty) but it was real but it was the worst cuts ever with hard tendon ot cartlige going thru it sent it back wanted nothing else then my mom had the same but hers was at least cutable and i guess chewable but she got the ziti noodles with it put them on my daughters plate and i saw this blk thing in it looked kinda like a mushroom piece but i picked it out and it was a piece of rubber from something GROSS IM NOT GOING BACK THERE i went up to pay even was charged for my bad veal plate the cashier did not even ask how everything was so i got pissed off i paid then took the piece of rubber to a man i guess he was the owner /manager he said i wish you would of told me before you paid what a butthole he could have given me a partial refund but nothing even offered not even a sorry about that they suck dont waste your time or money to eat there for any meal
Own or manage this property? Claim your listing for free to respond to reviews, update your profile and much more.


text:
Employment Opportunity: VCC seeks Bookkeeper
VCC is currently seeking a part-time bookkeeper to start immediately for an annual term: September to mid-May, with reduced hours June through August.
As the Bookkeeper your role is central in overseeing the financial operations of the Vancouver Curling Club. Your bookkeeping responsibilities will include processing accounts payable/receivable, bank reconciliations, preparing sales tax returns, processing payroll, and generating month end financial statements. In addition, the bookkeeper supports the Senior Administration team with effective financial processes, communication practices, organized filing systems (both hard copy and digital) and reporting.
As the ideal candidate you will possess a University degree or college diploma, preferably with emphasis on financial management. Professional experience with retail and membership based organizations is an asset, but not required. You will have a minimum of five years of bookkeeping and financial reporting experience, general understanding of GST and PST, knowledge of QuickBooks and online payroll systems. In addition, you have a proven level of professionalism, accuracy, attention to detail, multi-tasking and problem solving capabilities, excellent communication skills, and the ability to adjust to the changing needs of the organization.
This position is currently 15-20 hours per week September to mid-May, with reduced hours June through mid-August. Compensation is $17 to $20 per hour based on experience.
Applicants are encouraged to submit a cover letter and résumé expressing interest in the position, to email@example.com.
Try curling on the September 9-10 weekend
VCC is offering free one-hour sessions to try curling on the afternoons of Saturday, September 9 and Sunday, September 10 with instruction and equipment provided. To request a session for up to eight people fill in this form.
Registration for 2017-18 season
Some VCC leagues have changed their registration process for the upcoming season, now offering online registration in combination with VCC's annual membership/waiver form that all VCC curlers must fill out each season. We also now have an online form available for curlers wishing to purchase a practice membership. For more information go to our registration page.
Club Coach Workshop at VCC
The Vancouver Curling Club will host a Club Coach Workshop on the September 9-10 weekend. We invite curlers who are interested in sharing their passion for the game and enhancing their skill set to register at https://www.curlbc.ca/club-coach-2017-vancouver/
The Club Coach Workshop focuses on the club curler. Participants will learn:
- How to make ethical decisions and emergency action plans
- How to recruit and recognize volunteers
- Curling techniques, skill analysis and introductory strategies
- How to start a junior program
- How to coach teams to their first bonspiel
- How to work with special interest groups
Lounge Servers Wanted!
The VCC is currently seeking Bartender/Cooks for daytime and evening shifts Monday through Sunday (and as required for special events) to start at the end of August 2017 until the end of March 2018.
Leagues looking for curlers in 2017-18
Information here will be updated as league reps provide it. Click on the league links below for more details and contact information about leagues looking for curlers and teams for the 2017-18 season.
Monday Novice (Monday evenings)
Saturday Novice (Five-week sessions on Saturday evenings)
Norwesters Senior Men (Tuesdays and Thursdays, 10:00 am)
Pharmacists & Travelers (Thursdays 4:30 pm)
Tuesday Women (Tuesday evenings)
North Shore Day Ladies (Wednesdays 10:00 am)
Point Grey (Wednesday evenings)
High School/Youth Program (Wednesdays 4:00 pm)
Vancouver Senior Men (Tuesdays and Thursdays 1:00 pm)
Pacific Rim (Sunday afternoons and Monday evenings)
Sunday Open (Sundays 6:45 pm)
North Shore Mixed (Sundays 9:30 am)
Junior Program (Saturdays 12 noon)
453 League spares only (Fridays 6:00 pm)
Saturday Doubles (Saturdays 9:15 pm)
Warriors on Ice
It's common amongst playdowns curlers to joke about how many curling team jackets they have accumulated in their closet from years of competing. Many times over the years they find themselves changing teams or line-ups, resulting in the purchase of yet another team jacket. I have a collection of jackets myself.
New Helmet Recommendations from Curling Canada
Representatives of Curling Canada's 14 Member Associations approved a motion that endorses the immediate release of a Curling Canada statement to encourage Canadian curling clubs and facilities to acknowledge a concern about head injuries and concussions, and urges clubs and facilities to implement helmet-use initiatives in beginner and novice curling programs, and that helmets are strongly suggested for all in the Under-12
VCC Brazilians finish 3-4 at world mixed doubles
VCC Brazilian curlers Anne Shibuya and Marcio Cerquinho tied for fourth in their pool with a 3-4 record at the World Mixed Doubles Curling Championship in Lethbridge, April 22-29. Event coverage can be found at http://www.worldcurling.org/wmdcc2017.
Forrest team wins VCC Championship
The Andrew Forrest team from the Thursday Open League has won the annual VCC Championship and the Brock Tully team from the Super Senior League took the B event. Photos and more info can be found on our VCC Championship webpage.


text:
In the latest episode of Faction Friday, Alan, Sarah and Jamie discuss what may be arguably one of the greatest factions in WWE history, the Ministry of Darkness.
We discuss the ancient rituals which keep Vince McMahon alive, his role in the Marvel Cinematic Universe and Raven's stint as Undertaker's script writer. Confused? Listen in to make sense of it all. Oh, there's some wrestling stuff in there too.
As always, all audio clips are included under terms of fair use.


text:
Orchid Facial Oil Roller
$ 24.00
An exquisite blend of Orchid extract, precious Jasmine Sambac and Japanese Camellia flower oil combine to defend against free radicals, increase elasticity and feed the skin with beneficial vitamins and fatty acids such as omega 3 and 6 to protect against premature aging.
Ingredient list: orchid extract, camillia oil, squalane, colorless jojoba oil, jasmine samba, capric triglycerides. Made in the USA by Herbivore Botanicals.