38 #include <lifev/structure/solver/WallTensionEstimatorData.hpp> 46 WallTensionEstimatorData::WallTensionEstimatorData() :
49 M_recoveryVariable ( ),
57 WallTensionEstimatorData::WallTensionEstimatorData (
const WallTensionEstimatorData& wallTensionEstimatorData ) :
58 M_nameFile ( wallTensionEstimatorData.M_nameFile ),
59 M_analysisType ( wallTensionEstimatorData.M_analysisType ),
60 M_recoveryVariable ( wallTensionEstimatorData.M_recoveryVariable ),
61 M_initialTime ( wallTensionEstimatorData.M_initialTime ),
62 M_finalTime ( wallTensionEstimatorData.M_finalTime ),
63 M_iterStart ( wallTensionEstimatorData.M_iterStart ),
64 M_iterEnd ( wallTensionEstimatorData.M_iterEnd )
71 WallTensionEstimatorData&
72 WallTensionEstimatorData::operator= (
const WallTensionEstimatorData& wallTensionEstimatorData )
74 if (
this != &wallTensionEstimatorData )
76 M_nameFile = wallTensionEstimatorData.M_nameFile;
77 M_analysisType = wallTensionEstimatorData.M_analysisType;
78 M_recoveryVariable = wallTensionEstimatorData.M_recoveryVariable;
79 M_initialTime = wallTensionEstimatorData.M_initialTime;
80 M_finalTime = wallTensionEstimatorData.M_finalTime;
81 M_iterStart = wallTensionEstimatorData.M_iterStart;
82 M_iterEnd = wallTensionEstimatorData.M_iterEnd;
93 WallTensionEstimatorData::setup (
const GetPot& dataFile,
const std::string& section )
97 M_nameFile = dataFile ( ( section +
"/analysis/nameFile" ).data(),
"NO_DEFAULT_NAME_FILE" );
98 M_typeFile = dataFile ( ( section +
"/analysis/typeFile" ).data(),
"NO_DEFAULT_FILE_TYPE" );
100 M_analysisType = dataFile ( ( section +
"/analysis/analysisType" ).data(),
"NO_DEFAULT_ANALYSIS_TYPE" );
101 M_recoveryVariable = dataFile ( ( section +
"/analysis/recoveryVariable" ).data(),
"NO_DEFAULT_ANALYSIS_TYPE" );
103 UInt timesNumber (0);
105 if ( !M_analysisType.compare (
"istant") )
111 timesNumber = dataFile.vector_variable_size ( ( section +
"/analysis/start" ).data() );
115 M_initialTime.resize (timesNumber);
116 M_finalTime.resize (timesNumber);
118 M_iterStart.resize (timesNumber);
119 M_iterEnd.resize (timesNumber);
121 for (
UInt i (0); i < timesNumber ; ++i)
123 M_initialTime[i] = dataFile ( ( section +
"/analysis/start" ).data(), 0., i );
124 M_finalTime[i] = dataFile ( ( section +
"/analysis/end" ).data(), 0., i );
126 M_iterStart[i] = dataFile ( ( section +
"/analysis/iterationStart" ).data(),
"00000", i );
127 M_iterEnd[i] = dataFile ( ( section +
"/analysis/iterationEnd" ).data(),
"00000", i );
132 WallTensionEstimatorData::showMe ( std::ostream& output )
const 135 output <<
"\n*** Values for wall tension analysis [solid/analysis]\n\n";
136 output <<
"Name File = " << M_nameFile << std::endl;
137 output <<
"Type File = " << M_typeFile << std::endl;
138 output <<
"Analysis Type = " << M_analysisType << std::endl;
139 output <<
"Recovery Variable = " << M_recoveryVariable << std::endl;
140 output <<
"The numbers of intervals is = " << M_initialTime.size() << std::endl;
142 for ( UInt i (0); i < M_initialTime.size() ; ++i )
144 output << i + 1 <<
" Interval: " << std::endl;
145 output <<
"initial Time " << i + 1 <<
" = " << M_initialTime[i] << std::endl;
146 output <<
"final Time " << i + 1 <<
" = " << M_finalTime[i] << std::endl;
148 output <<
"iteration Start " << i + 1 <<
"= " << M_iterStart[i] << std::endl;
149 output <<
"iteration End " << i + 1 <<
"= " << M_iterEnd[i] << std::endl;
void updateInverseJacobian(const UInt &iQuadPt)
uint32_type UInt
generic unsigned integer (used mainly for addressing)