|
OOFEM 3.0
|
#include <homexportmodule.h>
Public Member Functions | |
| HOMExportModule (int n, EngngModel *e) | |
| Constructor. Creates empty Output Manager. | |
| virtual | ~HOMExportModule () |
| Destructor. | |
| void | initializeFrom (InputRecord &ir) override |
| Initializes receiver according to object description stored in input record. | |
| void | doOutput (TimeStep *tStep, bool forcedOutput=false) override |
| void | average (FloatArray &answer, double &volTot, int ist, bool subtractStressDepStrain, TimeStep *tStep) |
| void | initialize () override |
| void | terminate () override |
| const char * | giveClassName () const override |
| Returns class name of the receiver. | |
| const char * | giveInputRecordName () const |
| Public Member Functions inherited from oofem::ExportModule | |
| ExportModule (int n, EngngModel *e) | |
| Constructor. Creates empty Output Manager with number n. | |
| virtual | ~ExportModule () |
| Destructor. | |
| void | doForcedOutput (TimeStep *tStep) |
| bool | testSubStepOutput () |
| virtual void | initializeElementSet () |
Protected Attributes | |
| double | scale |
| Scale of all homogenized values. | |
| std::ofstream | stream |
| Stream for file. | |
| IntArray | ists |
| Internal states to export. | |
| IntArray | elements |
| List of elements. | |
| std::vector< FloatArray > | lastStress |
| Last averaged stress. | |
| std::vector< FloatArray > | lastStrainStressDep |
| Last averaged stress-dependent strain. | |
| bool | reactions |
| Reactions to export. | |
| bool | strainEnergy |
| Allow calculation of strain energy, evaluated from mid-point rule (exact for linear elastic problems with zero initial stress/strain field). Allows only non-growing domains. | |
| double | strainEnergySumStressDep |
| Protected Attributes inherited from oofem::ExportModule | |
| int | number |
| Component number. | |
| EngngModel * | emodel |
| Problem pointer. | |
| bool | tstep_all_out_flag |
| Indicates all steps selection. | |
| int | tstep_step_out |
| User timeStep Output step. Indicates every tstep_step_out-th step selected. | |
| std ::list< Range > | tsteps_out |
| List of user selected step numbers. | |
| bool | tstep_substeps_out_flag |
| bool | domain_all_flag |
| Indicates all domains. | |
| IntArray | domainMask |
| Domain selection mask. | |
| IntArray | regionSets |
| regions represented by sets | |
| double | timeScale |
| Scaling time in output, e.g. conversion from seconds to hours. | |
| Set | defaultElementSet |
| Default region set. | |
| bool | pythonExport |
| Output is carried out as a python list instead of writing files. | |
Additional Inherited Members | |
| Protected Member Functions inherited from oofem::ExportModule | |
| int | giveNumberOfRegions () |
| Returns number of regions (aka regionSets). | |
| Set * | giveRegionSet (int i) |
| Returns element set. | |
| std::string | giveOutputBaseFileName (TimeStep *tStep) |
| bool | testTimeStepOutput (TimeStep *tStep) |
| bool | testDomainOutput (int n) |
| std::string | errorInfo (const char *func) const |
| Returns string for prepending output (used by error reporting macros). | |
Represents HOM (Homogenization) export module. It averages internal variables over the whole domain and all elements in global coordinate system. Tensors are given in Voigt notation. Thus various element types (beam, plane element, brick) can be combined and will give correct averaged values.
Definition at line 62 of file homexportmodule.h.
| oofem::HOMExportModule::HOMExportModule | ( | int | n, |
| EngngModel * | e ) |
Constructor. Creates empty Output Manager.
References average(), doOutput(), HOMExportModule(), initialize(), initializeFrom(), and terminate().
Referenced by HOMExportModule().
|
virtual |
Destructor.
Definition at line 52 of file homexportmodule.C.
| void oofem::HOMExportModule::average | ( | FloatArray & | answer, |
| double & | volTot, | ||
| int | ist, | ||
| bool | subtractStressDepStrain, | ||
| TimeStep * | tStep ) |
Definition at line 132 of file homexportmodule.C.
References oofem::FloatArray::add(), oofem::FloatArray::at(), oofem::FloatArray::beDifferenceOf(), oofem::FloatArray::dotProduct(), elements, oofem::ExportModule::emodel, oofem::Domain::giveElements(), oofem::FloatArray::giveSize(), oofem::StructuralMaterial::giveStressDependentPartOfStrainVector(), lastStrainStressDep, lastStress, OOFEM_ERROR, oofem::FloatArray::resize(), scale, oofem::FloatArray::times(), and oofem::FloatArray::zero().
Referenced by doOutput(), and HOMExportModule().
|
overridevirtual |
Writes the output. Abstract service.
| tStep | Time step. |
| forcedOutput | If true, no testTimeStepOutput should be done. |
Implements oofem::ExportModule.
Definition at line 72 of file homexportmodule.C.
References oofem::FloatArray::at(), average(), elements, oofem::ExportModule::giveNumberOfRegions(), oofem::ExportModule::giveRegionSet(), oofem::FloatArray::giveSize(), oofem::TimeStep::giveTargetTime(), ists, reactions, strainEnergy, strainEnergySumStressDep, stream, oofem::ExportModule::testTimeStepOutput(), and oofem::ExportModule::timeScale.
Referenced by HOMExportModule().
|
inlineoverridevirtual |
Returns class name of the receiver.
Implements oofem::ExportModule.
Definition at line 95 of file homexportmodule.h.
|
inline |
Definition at line 96 of file homexportmodule.h.
References _IFT_HOMExportModule_Name.
|
overridevirtual |
Reimplemented from oofem::ExportModule.
Definition at line 207 of file homexportmodule.C.
References oofem::__InternalStateTypeToString(), oofem::ExportModule::emodel, oofem::ExportModule::initializeElementSet(), ists, oofem::ExportModule::number, OOFEM_ERROR, strainEnergy, and stream.
Referenced by HOMExportModule().
|
overridevirtual |
Initializes receiver according to object description stored in input record.
Reimplemented from oofem::ExportModule.
Definition at line 55 of file homexportmodule.C.
References _IFT_HOMExportModule_ISTs, _IFT_HOMExportModule_reactions, _IFT_HOMExportModule_scale, _IFT_HOMExportModule_strain_energy, oofem::InputRecord::hasField(), IR_GIVE_OPTIONAL_FIELD, ists, lastStrainStressDep, lastStress, reactions, scale, strainEnergy, and strainEnergySumStressDep.
Referenced by HOMExportModule().
|
overridevirtual |
Terminates the receiver. The terminating messages should be printed. All the streams should be closed.
Reimplemented from oofem::ExportModule.
Definition at line 234 of file homexportmodule.C.
References stream.
Referenced by HOMExportModule().
|
protected |
List of elements.
Definition at line 72 of file homexportmodule.h.
Referenced by average(), and doOutput().
|
protected |
Internal states to export.
Definition at line 70 of file homexportmodule.h.
Referenced by doOutput(), initialize(), and initializeFrom().
|
protected |
Last averaged stress-dependent strain.
Definition at line 76 of file homexportmodule.h.
Referenced by average(), and initializeFrom().
|
protected |
Last averaged stress.
Definition at line 74 of file homexportmodule.h.
Referenced by average(), and initializeFrom().
|
protected |
Reactions to export.
Definition at line 78 of file homexportmodule.h.
Referenced by doOutput(), and initializeFrom().
|
protected |
Scale of all homogenized values.
Definition at line 66 of file homexportmodule.h.
Referenced by average(), and initializeFrom().
|
protected |
Allow calculation of strain energy, evaluated from mid-point rule (exact for linear elastic problems with zero initial stress/strain field). Allows only non-growing domains.
Definition at line 80 of file homexportmodule.h.
Referenced by doOutput(), initialize(), and initializeFrom().
|
protected |
Definition at line 82 of file homexportmodule.h.
Referenced by doOutput(), and initializeFrom().
|
protected |
Stream for file.
Definition at line 68 of file homexportmodule.h.
Referenced by doOutput(), initialize(), and terminate().