cee::imp::cae::StateLinearCombination
-
class
StateLinearCombination
: public RefCountedObject This class handles the building and storing of a linear combination of states.
Once built and written to a VTFx file, it provides states that are a weighted linear combination of a the DataSource of a given UnstructGridModel.
First, use the constructor to define source UnstructGridModel and the source state ids used in the linear combination, as well as the reference values of the combined states to create.
The linear combination is then defined by setting the weights of each of the source states in each combined state. This is done in setSourceStateWeights().
As soon as all the data is provided, a call to build() will generate the new states in a build folder. The location of this build folder can be specified using setBuildFolderLocation()
All source states that are combined must have the same geometries
Public Functions
-
StateLinearCombination
(cee::ug::UnstructGridModel *sourceModel, const std::vector<int> &sourceStateIds, const std::vector<double> &combinedStateReferenceValues) Constructor.
Specifies the source UnstructGridModel, the ids of the states in this model that will be used in the linear combination and finally, the reference values of the combined states that will be generated.
-
void
setSourceStateWeights
(int sourceStateId, const std::vector<double> &weights) Sets the weights of the given state in each of the combined states to be generated.
-
bool
build
() Builds the combined states. Data is stored for performance in the output folder.
-
void
setBuildFolderLocation
(const cee::Str &location) Sets the location where the temporary build folder will be created.
-
bool
deleteBuildFolder
() Deletes the temporary build folder, releasing memory.
Only do this if the data is safely store in a VTFx file with a call to write()
-
void
setUseParallelComputation
(bool use) Activates/deactivates the use of parallel computation of combined states.
Activating usage when parallel is not supported will cause an assert.
-