Klasse Co2InfluenceOnLUE
- Alle implementierten Schnittstellen:
net.simplace.sim.util.FWSimFieldContainer
\(CO_2\) calculation
The actual \(CO_2\) concentration in the atmosphere is calculated by a linear function based on the \(CO_2\) concentration (cStartValue) in the start year (cStartYear) and the slope (cSlope).
\[ \begin{equation} CO_2(Year) = Slope \cdot (Year-StartYear) + StartValue \label{co2} \end{equation} \]LUE curve
The light use efficiency LUE is calculated in dependence of \(CO_2\) by the formula:
\[ \begin{eqnarray} LUE(CO_2) Ungültige Eingabe: "&" = Ungültige Eingabe: "&" \lambda \frac{CO_2}{CO_2 +b_1 e^{-b_2 CO_2}} \label{lue} \\ lambda Ungültige Eingabe: "&" = Ungültige Eingabe: "&" 100 g MJ^{-1} \end{eqnarray} \]where b1 and b2 are unitless coefficients which determine the shape of the curve and are 6928 and -0.0014 respectively by default.
LUE calculation
Finally the LUE-curve is stretched by a factor f so that it meets the reference LUE (cReferenceLueValue) value at a reference \(CO_2\) concentration (cReferenceCo2Value).
\[ \begin{eqnarray} f Ungültige Eingabe: "&" = Ungültige Eingabe: "&" \frac{ReferenceLueValue}{LUE(ReferenceCO_2Value)} \label{factor} \\ LUE Ungültige Eingabe: "&" = Ungültige Eingabe: "&" LUE(CO_2(Year)) \cdot f \label{finallue} \end{eqnarray} \]Remarks
If you want to switch of the \(CO_2\) effect (e.g. if you use want to use the same solution with projects to calculate with and without \(CO_2\) effect), then you can parameterize the component, so that the calculated LUE corresponds the given one:
- set cSlope to 0
- set cStartValue and cReferenceCo2Value to the same value
- set cReferenceLUEValue to the desired value
For clarity reasons however, it is recommended to use different solutions and to remove the SimComponent from the solution, if you don't want to calculate \(CO_2\) effect.
Reference:
Stockle, C.O., Williams, J.R., Rosenberg, N.J., Jones, C.A., 1992. A method for estimating the direct and climatic effects of rising atmospheric carbon dioxide on growth and yield of crops, Agr. Sys. 38 (3), 225-238. See http://dx.doi.org/10.1016/0308-521X(92)90067-X
- Autor:
- Gunther Krauss, Andreas Enders
Component Variables
| Content Type | Name | Description | Data Type | Unit | Min Value | Max Value | Default Value |
|---|---|---|---|---|---|---|---|
| constant | cReferenceCo2Value | Used to rescale the curve to meet the reference point \(\eqref{factor}\). | DOUBLE | ppm | 0.0 | 2000.0 | 350.0 |
| constant | cReferenceLueValue | Used to rescale the curve to meet the reference point \(\eqref{factor}\). | DOUBLE | g/MJ | 0.0 | 10.0 | 3.0 |
| constant | cSlope | Slope to calculate CO2 amount of given year by linear function in \(\eqref{co2}\). | DOUBLE | ppm/a | -1000.0 | 1000.0 | 3.5 |
| constant | cStartValue | Reference CO2 amount of the StartYear, starting point of the line \(\eqref{co2}\) | DOUBLE | ppm | 0.0 | 2000.0 | 350.0 |
| constant | cStartYear | Reference year, starting point of the line \(\eqref{co2}\) | INT | a | 0 | 10000 | 1990 |
| constant | c_b1 | Parameter \(b_1\) to dertemine the shape of curve \(\eqref{lue}\) | DOUBLE | 1 | 0.0 | 1000000.0 | 6928.0 |
| constant | c_b2 | Parameter \(b_2\) to determine the shape of curve \(\eqref{lue}\) | DOUBLE | 1 | -10.0 | 10.0 | -0.0014 |
| out | LUE | Light use efficiency dependend on \(CO_2\) \(\eqref{finallue}\) | DOUBLE | g/MJ | 0.0 | 20.0 | - |
-
Verschachtelte Klassen - Übersicht
Von Klasse geerbte verschachtelte Klassen/Schnittstellen net.simplace.sim.model.FWSimComponent
net.simplace.sim.model.FWSimComponent.TEST_STATE -
Feldübersicht
Von Klasse geerbte Felder net.simplace.sim.model.FWSimComponent
iFieldMap, iFrequence, iInputMap, iJexlRule, iMasterComponentGroup, iName, iOrderNumber, isComponentGroup, iSimComponentElement, iSimModel, iVarMap -
Konstruktorübersicht
Konstruktoren -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungprotected net.simplace.sim.model.FWSimComponentclone(net.simplace.sim.util.FWSimVarMap aVarMap) create the FWSimVariables as interface for this SimComponentfillTestVariables(int aParamIndex, net.simplace.sim.model.FWSimComponent.TEST_STATE aDefineOrCheck) called for single component test to check the components algorithm.protected voidinit()initializes the fields by getting input and output FWSimVariables from VarMapprotected voidprocess()process the algorithm and write the results back to VarMapVon Klasse geerbte Methoden net.simplace.sim.model.FWSimComponent
addVariable, bind, checkCondition, createSimComponent, createSimComponent, createSimComponent, createSimComponent, doProcess, getConstantVariables, getContentType, getCreateFormXML, getDescription, getEditFormXML, getFieldMap, getFrequence, getFrequenceRuleScript, getInputs, getInputVariables, getMasterComponentGroup, getName, getOrderNumber, getOutputVariables, getVariable, getVariableField, getVarMap, initialize, isConditionCheck, isVariableAvailable, performLinks, performLinks, readInputs, removeVariable, reset, runComponentTest, setVariablesDefault, toComponentLinkingXML, toDocXML, toGroupXML, toOutputDefinitionXML, toResourcesDataXML, toResourcesDefinitionXML, toString, toXML, writeVarInfos
-
Konstruktordetails
-
Co2InfluenceOnLUE
public Co2InfluenceOnLUE()Empty constructor used by class.forName()
-
-
Methodendetails
-
createVariables
create the FWSimVariables as interface for this SimComponent- Angegeben von:
createVariablesin Schnittstellenet.simplace.sim.util.FWSimFieldContainer- Angegeben von:
createVariablesin Klassenet.simplace.sim.model.FWSimComponent- Siehe auch:
-
init
protected void init()initializes the fields by getting input and output FWSimVariables from VarMap- Angegeben von:
initin Klassenet.simplace.sim.model.FWSimComponent- Siehe auch:
-
process
protected void process()process the algorithm and write the results back to VarMap- Angegeben von:
processin Klassenet.simplace.sim.model.FWSimComponent- Siehe auch:
-
fillTestVariables
public HashMap<String,net.simplace.sim.util.FWSimVariable<?>> fillTestVariables(int aParamIndex, net.simplace.sim.model.FWSimComponent.TEST_STATE aDefineOrCheck) called for single component test to check the components algorithm.- Angegeben von:
fillTestVariablesin Klassenet.simplace.sim.model.FWSimComponent- Siehe auch:
-
clone
protected net.simplace.sim.model.FWSimComponent clone(net.simplace.sim.util.FWSimVarMap aVarMap) - Angegeben von:
clonein Klassenet.simplace.sim.model.FWSimComponent- Siehe auch:
-