SPHinXsys  alpha version
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
SPH::RegressionTestEnsembleAveraged< ObserveMethodType > Class Template Reference

the regression test is based on the ensemble-averaged meanvalue and variance. More...

#include <ensemble_averaged_method.h>

Inherits SPH::RegressionTestTimeAveraged< ObserveMethodType >.

Public Member Functions

template<typename... ConstructorArgs>
 RegressionTestEnsembleAveraged (ConstructorArgs &&...args)
 
void settingupAndCorrection ()
 
void readMeanVarianceFromXml ()
 
void updateMeanVariance ()
 
void writeMeanVarianceToXml ()
 
bool compareMeanVariance ()
 
void resultTest ()
 
void generateDataBase (VariableType threshold_mean, VariableType threshold_variance, string filter="false")
 
void newResultTest (string filter="false")
 
- Public Member Functions inherited from SPH::RegressionTestTimeAveraged< ObserveMethodType >
template<typename... ConstructorArgs>
 RegressionTestTimeAveraged (ConstructorArgs &&...args)
 
void initializeThreshold (VariableType &threshold_mean, VariableType &threshold_variance)
 
void settingupTheTest ()
 
void readMeanVarianceFromXml ()
 
void searchForStartPoint ()
 
void filterExtremeValues ()
 
void updateMeanVariance ()
 
void writeMeanVarianceToXml ()
 
bool compareMeanVariance ()
 
void resultTest ()
 
void generateDataBase (VariableType threshold_mean, VariableType threshold_variance, string filter="false")
 
void newResultTest (string filter="false")
 
- Public Member Functions inherited from SPH::RegressionTestBase< ObserveMethodType >
template<typename... ConstructorArgs>
 RegressionTestBase (ConstructorArgs &&...args)
 
void writeToXml (ObservedQuantityRecording< VariableType > *observe_method, size_t iteration=0)
 
template<typename ReduceType >
void writeToXml (BodyReducedQuantityRecording< ReduceType > *reduce_method, size_t iteration=0)
 
void readFromXml (ObservedQuantityRecording< VariableType > *observe_method)
 
template<typename ReduceType >
void readFromXml (BodyReducedQuantityRecording< ReduceType > *reduce_method)
 
void transposeTheIndex ()
 
void readResultFromXml ()
 
void writeResultToXml ()
 
void readResultFromXml (int index_of_run_)
 
void writeResultToXml (int index_of_run_)
 
void writeToFile (size_t iteration=0) override
 
void writeXmlToXmlFile ()
 
void readXmlFromXmlFile ()
 

Protected Member Functions

void calculateNewVariance (TripleVec< Real > &result, DoubleVec< Real > &meanvalue_new, DoubleVec< Real > &variance, DoubleVec< Real > &variance_new)
 
void calculateNewVariance (TripleVec< Vecd > &result, DoubleVec< Vecd > &meanvalue_new, DoubleVec< Vecd > &variance, DoubleVec< Vecd > &variance_new)
 
void calculateNewVariance (TripleVec< Matd > &result, DoubleVec< Matd > &meanvalue_new, DoubleVec< Matd > &variance, DoubleVec< Matd > &variance_new)
 
int compareParameter (string par_name, DoubleVec< Real > &parameter, DoubleVec< Real > &parameter_new, Real &threshold)
 
int compareParameter (string par_name, DoubleVec< Vecd > &parameter, DoubleVec< Vecd > &parameter_new, Vecd &threshold)
 
int compareParameter (string par_name, DoubleVec< Matd > &parameter, DoubleVec< Matd > &parameter_new, Matd &threshold)
 
int testNewResult (int diff, DoubleVec< Real > &current_result, DoubleVec< Real > &meanvalue, DoubleVec< Real > &variance)
 
int testNewResult (int diff, DoubleVec< Vecd > &current_result, DoubleVec< Vecd > &meanvalue, DoubleVec< Vecd > &variance)
 
int testNewResult (int diff, DoubleVec< Matd > &current_result, DoubleVec< Matd > &meanvalue, DoubleVec< Matd > &variance)
 
- Protected Member Functions inherited from SPH::RegressionTestTimeAveraged< ObserveMethodType >
void filterLocalResult (DoubleVec< Real > &current_result)
 
void filterLocalResult (DoubleVec< Vecd > &current_result)
 
void filterLocalResult (DoubleVec< Matd > &current_result)
 
void searchSteadyStart (DoubleVec< Real > &current_result)
 
void searchSteadyStart (DoubleVec< Vecd > &current_result)
 
void searchSteadyStart (DoubleVec< Matd > &current_result)
 
void calculateNewVariance (DoubleVec< Real > &current_result, StdVec< Real > &local_meanvalue, StdVec< Real > &variance, StdVec< Real > &variance_new)
 
void calculateNewVariance (DoubleVec< Vecd > &current_result, StdVec< Vecd > &local_meanvalue, StdVec< Vecd > &variance, StdVec< Vecd > &variance_new)
 
void calculateNewVariance (DoubleVec< Matd > &current_result, StdVec< Matd > &local_meanvalue, StdVec< Matd > &variance, StdVec< Matd > &variance_new)
 
int compareParameter (string par_name, StdVec< Real > &parameter, StdVec< Real > &parameter_new, Real &threshold)
 
int compareParameter (string par_name, StdVec< Vecd > &parameter, StdVec< Vecd > &parameter_new, Vecd &threshold)
 
int compareParameter (string par_name, StdVec< Matd > &parameter, StdVec< Matd > &parameter_new, Matd &threshold)
 
int testNewResult (DoubleVec< Real > &current_result, StdVec< Real > &meanvalue, StdVec< Real > &local_meanvalue, StdVec< Real > &variance)
 
int testNewResult (DoubleVec< Vecd > &current_result, StdVec< Vecd > &meanvalue, StdVec< Vecd > &local_meanvalue, StdVec< Vecd > &variance)
 
int testNewResult (DoubleVec< Matd > &current_result, StdVec< Matd > &meanvalue, StdVec< Matd > &local_meanvalue, StdVec< Matd > &variance)
 

Protected Attributes

DoubleVec< VariableType > meanvalue_
 
DoubleVec< VariableType > meanvalue_new_
 
DoubleVec< VariableType > variance_
 
DoubleVec< VariableType > variance_new_
 
- Protected Attributes inherited from SPH::RegressionTestTimeAveraged< ObserveMethodType >
int snapshot_for_converged_
 
std::string mean_variance_filefullpath_
 
std::string filefullpath_filter_output_
 
XmlEngine mean_variance_xml_engine_in_
 
XmlEngine mean_variance_xml_engine_out_
 
VariableType threshold_mean_
 
VariableType threshold_variance_
 
StdVec< VariableType > meanvalue_
 
StdVec< VariableType > meanvalue_new_
 
StdVec< VariableType > variance_
 
StdVec< VariableType > variance_new_
 
StdVec< VariableType > local_meanvalue_
 
- Protected Attributes inherited from SPH::RegressionTestBase< ObserveMethodType >
std::string input_folder_path_
 
std::string in_output_filefullpath_
 
std::string result_filefullpath_
 
std::string runtimes_filefullpath_
 
std::string converged
 
XmlMemoryIO xmlmemory_io_
 
XmlEngine observe_xml_engine_
 
XmlEngine result_xml_engine_in_
 
XmlEngine result_xml_engine_out_
 
StdVec< std::string > element_tag_
 
DoubleVec< VariableType > current_result_
 
DoubleVec< VariableType > current_result_trans_
 
DoubleVec< VariableType > result_in_
 
TripleVec< VariableType > result_
 
int snapshot_
 
int observation_
 
int difference_
 
int number_of_run_
 
int label_for_repeat_
 
int number_of_snapshot_old_
 

Detailed Description

template<class ObserveMethodType>
class SPH::RegressionTestEnsembleAveraged< ObserveMethodType >

the regression test is based on the ensemble-averaged meanvalue and variance.

Member Function Documentation

◆ calculateNewVariance()

template<class ObserveMethodType >
void SPH::RegressionTestEnsembleAveraged< ObserveMethodType >::calculateNewVariance ( TripleVec< Real > &  result,
DoubleVec< Real > &  meanvalue_new,
DoubleVec< Real > &  variance,
DoubleVec< Real > &  variance_new 
)
protected

the method used for calculating the new variance.

◆ compareMeanVariance()

template<class ObserveMethodType >
bool SPH::RegressionTestEnsembleAveraged< ObserveMethodType >::compareMeanVariance ( )

write the meanvalue and variance to the .xml file.

◆ compareParameter()

template<class ObserveMethodType >
int SPH::RegressionTestEnsembleAveraged< ObserveMethodType >::compareParameter ( string  par_name,
DoubleVec< Real > &  parameter,
DoubleVec< Real > &  parameter_new,
Real &  threshold 
)
protected

the method used for comparing the meanvalue and variance.

◆ generateDataBase()

template<class ObserveMethodType >
void SPH::RegressionTestEnsembleAveraged< ObserveMethodType >::generateDataBase ( VariableType  threshold_mean,
VariableType  threshold_variance,
string  filter = "false" 
)
inline

test the new result if it is converged within the range.

◆ newResultTest()

template<class ObserveMethodType >
void SPH::RegressionTestEnsembleAveraged< ObserveMethodType >::newResultTest ( string  filter = "false")
inline

the interface for testing new result.

◆ readMeanVarianceFromXml()

template<class ObserveMethodType >
void SPH::RegressionTestEnsembleAveraged< ObserveMethodType >::readMeanVarianceFromXml ( )

setup and correct the number of old and new result.

◆ resultTest()

template<class ObserveMethodType >
void SPH::RegressionTestEnsembleAveraged< ObserveMethodType >::resultTest ( )

compare the meanvalue and variance between old and new ones.

Unify the length of meanvalue, variance, old result, new result.

◆ settingupAndCorrection()

template<class ObserveMethodType >
void SPH::RegressionTestEnsembleAveraged< ObserveMethodType >::settingupAndCorrection ( )

Unify the length of current result and previous result.

◆ testNewResult()

template<class ObserveMethodType >
int SPH::RegressionTestEnsembleAveraged< ObserveMethodType >::testNewResult ( int  diff,
DoubleVec< Real > &  current_result,
DoubleVec< Real > &  meanvalue,
DoubleVec< Real > &  variance 
)
protected

the method used for testing the new result with meanvalue and variance.

◆ updateMeanVariance()

template<class ObserveMethodType >
void SPH::RegressionTestEnsembleAveraged< ObserveMethodType >::updateMeanVariance ( )

read the meanvalue and variance from the .xml file.

Unify the length of result and meanvalue.

update the meanvalue of the result.
Update the variance of the result.

◆ writeMeanVarianceToXml()

template<class ObserveMethodType >
void SPH::RegressionTestEnsembleAveraged< ObserveMethodType >::writeMeanVarianceToXml ( )

update the meanvalue and variance from new result.


The documentation for this class was generated from the following files: