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 TypeNameDescriptionData TypeUnitMin ValueMax ValueDefault Value
constantcFactorfactor the value is scaled withDOUBLE--1.0
constantcFactorArrayarray with factors - when given, cFactor is ignored and array values are usedDOUBLEARRAY---
constantcOffsetoffset that is added to the (scaled) valueDOUBLE--0.0
constantcOffsetArrayarray with offsets - when given, cOffset is ignored and array values are usedDOUBLEARRAY---
constantcOnlyXif true, only 1st, 3rd, 5th, ... entries are transformed (for FST interpolation tables x values)BOOLEAN--false
constantcOnlyYif true, only 2nd, 4th, 6th, ... entries are transformed (for FST interpolation tables y values)BOOLEAN--false
inputiArrayinput arrayDOUBLEARRAY---
outArraytransformed output arrayDOUBLEARRAY---
  • 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

    Constructors
    Constructor
    Description
    Empty constructor used by class.forName()
  • Method Summary

    Modifier and Type
    Method
    Description
    protected net.simplace.sim.model.FWSimComponent
    clone(net.simplace.sim.util.FWSimVarMap aVarMap)
     
    HashMap<String,net.simplace.sim.util.FWSimVariable<?>>
    Create the FWSimVariables as interface for this SimComponent
    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.
    protected void
    Initializes the fields by getting input and output FWSimVariables from VarMap
    protected void
    Process the algorithm and write the results back to VarMap
    protected 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

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • LinearTransformArray

      public LinearTransformArray()
      Empty constructor used by class.forName()
  • Method Details

    • createVariables

      public HashMap<String,net.simplace.sim.util.FWSimVariable<?>> createVariables()
      Create the FWSimVariables as interface for this SimComponent
      Specified by:
      createVariables in interface net.simplace.sim.util.FWSimFieldContainer
      Specified by:
      createVariables in class net.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 class net.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 class net.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 class net.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 class net.simplace.sim.model.FWSimComponent
      See Also:
      • FWSimComponent.clone(net.simplace.sim.util.FWSimVarMap)