Patch environment components
Table of Contents
The component tag defines a single component. Nested tags include component.parameter for parameters and component.register for registration to a layer.
<components>
    <component id="[ID]" class="[CLASS]">
        <component.parameter id="[ID]" value="[VALUE]" scale="[SCALE]" />
        <component.register id="[ID]" />
        ...
    </component>
    ...
</components>
Component creation
The component tag attributes are used to create the component.
- Each component must have a unique 
id - Each component must specify a 
class 
Valid options for classes include:
source_sites- Sites for generator based on source layout
 pattern_sites- Sites for generator based on pattern layout
 graph_sites_simple- Sites for generator based on graph layout with simple hemodynamics
 graph_sites_complex- Sites for generator based on graph layout with complex hemodynamics
 pulse- Component for pulsing source concentrations
 - Requires 
source_sitescomponent cycle- Component for cycling source concentrations
 - Requires 
source_sitescomponent degrade- Component for degrading graph sites
 - Requires 
graph_sites_simpleorgraph_sites_complexcomponent remodel- Component for remodeling graph sites
 - Requires 
graph_sites_simpleorgraph_sites_complexcomponent 
| ATTRIBUTE | DESCRIPTION | TYPE | REQUIRED | 
|---|---|---|---|
id |  unique name for the component | string | Y | 
class |  component class option | string | Y | 
Example: Initializing one environment component
Specifies an environment component, A, with the source sites component class.
<components>
    <component id="A" class="source_sites" />
</components>
Example: Initializing two environment components
Specifies two environment components, A and B. Component A uses the complex graph sites component class, and component B uses the remodeling component class.
<components>
    <component id="A" class="graph_sites_complex" />
    <component id="B" class="remodel" />
</components>
Component parameters
The component.parameter tag defines component parameters. Unless modified, default values are used for all parameters. Defaults are listed in parameter.patch.xml.
- Either or both 
valueandscaleattributes can be applied, withvalueapplied first - Only numeric parameters can be modified using 
scale 
| ATTRIBUTE | DESCRIPTION | 
|---|---|
id |  parameter name | 
value |  new parameter value | 
scale |  scaling factor applied to parameter value | 
Example: Modifying component parameters
The degradation rate parameter is set to the new value 2000.
<component.parameter id="DEGRADATION_RATE" value="2000" />
The default value of the degradation rate parameter is scaled by 2.
<component.parameter id="DEGRADATION_RATE" scale="2" />
The degradation rate parameter is set to the new value 10 * 2 = 20.
<component.parameter id="DEGRADATION_RATE" value="10" scale="2" />
Registration to layers
The component.register tag registers the component to a specific layer. A component may be registered to more than one layer. The registered layer id must match a layer defined in the lattice layer setup.
| ATTRIBUTE | DESCRIPTION | 
|---|---|
id |  layer id | 
Example: Registering a component to a single layer
The component is registered to layer A.
<component.register id="A" />
Example: Registering a component to multiple layers
The component is registered to layer A and layer B.
<component.register id="A" />
<component.register id="B" />