Package net.simplace.sim.components.util
Class LinearTransformArray
java.lang.Object
net.simplace.sim.model.FWSimComponent
net.simplace.sim.components.util.LinearTransformArray
- All Implemented Interfaces:
net.simplace.sim.util.FWSimFieldContainer
public class LinearTransformArray
extends net.simplace.sim.model.FWSimComponent
Scales and shifts DOUBLEARRAY SimVariables.
Takes a doublearray Variable iArray and scales it with cFactor and shifts it with cOffset (linear transformation). The output is stored in the variable Array.
\[ Array_k = cFactor \cdot iArray_k + cOffset \]
Notice
It is also possible, to scale FST-styled interpolation tables, i. e. double arrays of size 2n, that store alternating x and y values.
If cOnlyY is true, only the entries, representing y values are scaled (2nd, 4th, 6th ,...).
If cOnlyX is true, only the entries, representing x values are scaled (1st, 3rd, 5th, ...).
If both are true, then nothing is scaled. By default, both are set to false.
- Author:
- Gunther Krauss, gk@uni-bonn.de
Component Variables
Content Type | Name | Description | Data Type | Unit | Min Value | Max Value | Default Value |
---|---|---|---|---|---|---|---|
constant | cFactor | factor the value is scaled with | DOUBLE | - | - | 1.0 | |
constant | cFactorArray | array with factors - when given, cFactor is ignored and array values are used | DOUBLEARRAY | - | - | - | |
constant | cOffset | offset that is added to the (scaled) value | DOUBLE | - | - | 0.0 | |
constant | cOffsetArray | array with offsets - when given, cOffset is ignored and array values are used | DOUBLEARRAY | - | - | - | |
constant | cOnlyX | if true, only 1st, 3rd, 5th, ... entries are transformed (for FST interpolation tables x values) | BOOLEAN | - | - | false | |
constant | cOnlyY | if true, only 2nd, 4th, 6th, ... entries are transformed (for FST interpolation tables y values) | BOOLEAN | - | - | false | |
input | iArray | input array | DOUBLEARRAY | - | - | - | |
out | Array | transformed output array | DOUBLEARRAY | - | - | - |
-
Nested Class Summary
Nested classes/interfaces inherited from class net.simplace.sim.model.FWSimComponent
net.simplace.sim.model.FWSimComponent.TEST_STATE
-
Field Summary
Fields inherited from class net.simplace.sim.model.FWSimComponent
iFieldMap, iFrequence, iInputMap, iJexlRule, iMasterComponentGroup, iName, iOrderNumber, isComponentGroup, iSimComponentElement, iSimModel, iVarMap
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected net.simplace.sim.model.FWSimComponent
clone
(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 void
init()
Initializes the fields by getting input and output FWSimVariables from VarMapprotected void
process()
Process the algorithm and write the results back to VarMapprotected void
Methods inherited from class 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
-
Constructor Details
-
LinearTransformArray
public LinearTransformArray()Empty constructor used by class.forName()
-
-
Method Details
-
createVariables
Create the FWSimVariables as interface for this SimComponent- Specified by:
createVariables
in interfacenet.simplace.sim.util.FWSimFieldContainer
- Specified by:
createVariables
in classnet.simplace.sim.model.FWSimComponent
- See Also:
-
FWSimComponent.createVariables()
-
init
protected void init()Initializes the fields by getting input and output FWSimVariables from VarMap- Specified by:
init
in classnet.simplace.sim.model.FWSimComponent
- See Also:
-
FWSimComponent.init()
-
process
protected void process()Process the algorithm and write the results back to VarMap- Specified by:
process
in classnet.simplace.sim.model.FWSimComponent
- See Also:
-
FWSimComponent.process()
-
transformArray
protected void transformArray() -
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.- Specified by:
fillTestVariables
in classnet.simplace.sim.model.FWSimComponent
- See Also:
-
net.simplace.sim.util.FWSimFieldContainer#fillTestVariables(int aParamIndex, TEST_STATE aDefineOrCheck)
-
clone
protected net.simplace.sim.model.FWSimComponent clone(net.simplace.sim.util.FWSimVarMap aVarMap) - Specified by:
clone
in classnet.simplace.sim.model.FWSimComponent
- See Also:
-
FWSimComponent.clone(net.simplace.sim.util.FWSimVarMap)
-