Package net.simplace.sim.transformers
Class PedotransferTransformer
java.lang.Object
net.simplace.sim.io.FWSimIOAdapter
net.simplace.sim.io.resources.FWSimInputAdapter
net.simplace.sim.io.resources.FWSimResourceTransformer
net.simplace.sim.transformers.PedotransferTransformer
- All Implemented Interfaces:
net.simplace.sim.util.FWSimFieldContainer
public class PedotransferTransformer
extends net.simplace.sim.io.resources.FWSimResourceTransformer
WIKI_START
Takes data with depth, clay percentage, silt percentage, sand percentage (optional, default 100-(clay+silt)), organic matter percentage (optional, default 0)
bulk density (optional, default 1.4), top soil depth (optional, default 0.3 m), pedotransfer function (optional, default 'Hypres'),
gravel percentage (optional, default 0) in n soil layers and transforms it to Van Genuchten parameters alpha, l, m, n and Ks or Volumetric water contents.
== Description ==
Soil data is mostly delivered with the layer specific information. The layers have different depth and are varying in their count.
This Transformer takes the texture data with these n different depth layers and creates Van Genuchten and Volumetric Water Content data.
Array fields like DOUBLEARRAY for the different parameters. Depending on the fields that you put into the header the different fields are calculated.
=== Configuration ===
requested structure of configuration element:
{{{
Hypres ... until now only Hypres and Rawls - default to Hypres
0.3 ... in m, default to 0.3
0.3 ... in m, default to 0.3
depth ... or ...
{0.05,0.3,0.6,1.0,1.5}
}}}
Please note: Only columns, where the column names have been added to the header of the resource definition are added. The range of the fields is free.
The id's meanwhile are fixed and necessary. If additional columns are added they are directly taken from the source and not touched.
Resource "soil" needs the following fields:
BulkDensity in g/cm3 (optional, default to 1.4)
GravelPercentage in g/g * 100 (optional, default to 0)
OrganicPercentage in g/g * 100 (optional, default to 0
One of those is optional and will be calculated from the others. Sum of the three fractions has to be 100!
SandPercentage in g/g * 100
SiltPercentage in g/g * 100
ClayPercentage in g/g * 100
WIKI_END
- Author:
- Andreas Enders
-
Nested Class Summary
Nested classes/interfaces inherited from class net.simplace.sim.io.FWSimIOAdapter
net.simplace.sim.io.FWSimIOAdapter.FREQUENCE
-
Field Summary
Fields inherited from class net.simplace.sim.io.resources.FWSimResourceTransformer
iFieldMap, iIntColumnMap, iLastInputValuesMap, iLastProjectID, iLastUniqueID, iPoolName, iSourceName
Fields inherited from class net.simplace.sim.io.resources.FWSimInputAdapter
iJexlScript, iShouldCacheToDB
Fields inherited from class net.simplace.sim.io.FWSimIOAdapter
iArrayMode, iFieldcount, iFrequence, iHeaderVariables, iInterface, iJexlRule, iKeyMap, iName, iOrderNumber, iProcessTime, iResourceElement, iSession, iSourceKey
-
Constructor Summary
ConstructorDescriptionPedotransferTransformer
(net.simplace.sim.FWSimSession aSession, Integer aOrderNumber) PedotransferTransformer
(net.simplace.sim.FWSimSession aSession, org.jdom2.Element aResourceElement, Integer aOrderNumber) -
Method Summary
Modifier and TypeMethodDescriptionnet.simplace.sim.io.resources.FWSimResourceCache
getData
(net.simplace.sim.util.FWSimVarMap aVarMap) standard method from outsidenet.simplace.sim.io.resources.FWSimResourceCache
getData
(net.simplace.sim.util.FWSimVarMap aVarMap, net.simplace.sim.io.resources.FWSimResourceCache aResourceCache) used by test casesvoid
updateFields
(net.simplace.core.FWObservable aObservable) Methods inherited from class net.simplace.sim.io.resources.FWSimResourceTransformer
addVariable, createFormFields, createResourceTransformer, createResourceTransformer, createResourceTransformer, fillVarMap, getCreateFormXML, getEditFormXML, getSourceResourceCache, getVariable, isUpdated, toXML
Methods inherited from class net.simplace.sim.io.resources.FWSimInputAdapter
getContentType, getInputVariables, getJexlScript, getOutputVariables, getVarMap, isTransformer, shouldCacheToDB, toHTMLTablestring
Methods inherited from class net.simplace.sim.io.FWSimIOAdapter
addProcessTime, checkCondition, createFormFields, finalize, getFieldMap, getFrequence, getHeaderVariables, getHeaderXML, getInterface, getJexlRule, getKeyMap, getName, getOrderNumber, isArrayMode, isConditionCheck, removeVariable, setInterface, setOrderNumber, toString, writeHeaderList
-
Constructor Details
-
PedotransferTransformer
public PedotransferTransformer(net.simplace.sim.FWSimSession aSession, org.jdom2.Element aResourceElement, Integer aOrderNumber) - Parameters:
aSession
-aResourceElement
-aOrderNumber
-
-
PedotransferTransformer
- Parameters:
aSession
-aOrderNumber
-
-
-
Method Details
-
createVariables
- Specified by:
createVariables
in interfacenet.simplace.sim.util.FWSimFieldContainer
- Overrides:
createVariables
in classnet.simplace.sim.io.FWSimIOAdapter
-
getData
public net.simplace.sim.io.resources.FWSimResourceCache getData(net.simplace.sim.util.FWSimVarMap aVarMap) throws net.simplace.sim.exceptions.MissingSimResourceException standard method from outside- Specified by:
getData
in classnet.simplace.sim.io.resources.FWSimInputAdapter
- Throws:
net.simplace.sim.exceptions.MissingSimResourceException
- See Also:
-
FWSimInputAdapter.getData(net.simplace.sim.util.FWSimVarMap)
-
getData
public net.simplace.sim.io.resources.FWSimResourceCache getData(net.simplace.sim.util.FWSimVarMap aVarMap, net.simplace.sim.io.resources.FWSimResourceCache aResourceCache) throws net.simplace.sim.exceptions.MissingSimResourceException used by test cases- Parameters:
aVarMap
- variable mapaResourceCache
- Cached resources (soil data)- Returns:
- delivered new data from transformer
- Throws:
net.simplace.sim.exceptions.MissingSimResourceException
-
updateFields
public void updateFields(net.simplace.core.FWObservable aObservable) - Specified by:
updateFields
in classnet.simplace.sim.io.resources.FWSimResourceTransformer
-