A class used to perform Monte Carlo sampling for performing Morris sensitivity analysis. More...
#include <MorrisSampler.h>
Public Types | |
| enum | SampleMode { SampleMode::GLOBAL, SampleMode::LOCAL } |
| typedef DataFileName | DataFileParameterType |
Public Member Functions | |
| MorrisSampler (const InputParameters ¶meters) | |
| std::vector< Real > | getNextLocalRow () |
| dof_id_type | getNumberOfRows () const |
| dof_id_type | getNumberOfCols () const |
| dof_id_type | getNumberOfLocalRows () const |
| const LocalRankConfig & | getRankConfig (bool batch_mode) const |
| virtual bool | isAdaptiveSamplingCompleted () const |
| libMesh::Parallel::Communicator & | getLocalComm () |
| virtual bool | enabled () const |
| std::shared_ptr< MooseObject > | getSharedPtr () |
| std::shared_ptr< const MooseObject > | getSharedPtr () const |
| bool | isKokkosObject (IsKokkosObjectKey &&) const |
| MooseApp & | getMooseApp () const |
| const std::string & | type () const |
| const std::string & | name () const |
| std::string | typeAndName () const |
| MooseObjectParameterName | uniqueParameterName (const std::string ¶meter_name) const |
| MooseObjectName | uniqueName () const |
| const InputParameters & | parameters () const |
| const hit::Node * | getHitNode () const |
| bool | hasBase () const |
| const std::string & | getBase () const |
| const T & | getParam (const std::string &name) const |
| std::vector< std::pair< T1, T2 > > | getParam (const std::string ¶m1, const std::string ¶m2) const |
| const T * | queryParam (const std::string &name) const |
| const T & | getRenamedParam (const std::string &old_name, const std::string &new_name) const |
| T | getCheckedPointerParam (const std::string &name, const std::string &error_string="") const |
| bool | isParamValid (const std::string &name) const |
| bool | isParamSetByUser (const std::string &name) const |
| void | connectControllableParams (const std::string ¶meter, const std::string &object_type, const std::string &object_name, const std::string &object_parameter) const |
| void | paramError (const std::string ¶m, Args... args) const |
| void | paramWarning (const std::string ¶m, Args... args) const |
| void | paramWarning (const std::string ¶m, Args... args) const |
| void | paramInfo (const std::string ¶m, Args... args) const |
| std::string | messagePrefix (const bool hit_prefix=true) const |
| std::string | errorPrefix (const std::string &) const |
| void | mooseError (Args &&... args) const |
| void | mooseDocumentedError (const std::string &repo_name, const unsigned int issue_num, Args &&... args) const |
| void | mooseErrorNonPrefixed (Args &&... args) const |
| void | mooseWarning (Args &&... args) const |
| void | mooseWarning (Args &&... args) const |
| void | mooseWarningNonPrefixed (Args &&... args) const |
| void | mooseWarningNonPrefixed (Args &&... args) const |
| void | mooseDeprecated (Args &&... args) const |
| void | mooseDeprecated (Args &&... args) const |
| void | mooseInfo (Args &&... args) const |
| void | callMooseError (std::string msg, const bool with_prefix, const hit::Node *node=nullptr) const |
| std::string | getDataFileName (const std::string ¶m) const |
| std::string | getDataFileNameByName (const std::string &relative_path) const |
| std::string | getDataFilePath (const std::string &relative_path) const |
| virtual void | initialSetup () |
| virtual void | timestepSetup () |
| virtual void | jacobianSetup () |
| virtual void | residualSetup () |
| virtual void | subdomainSetup () |
| virtual void | customSetup (const ExecFlagType &) |
| const ExecFlagEnum & | getExecuteOnEnum () const |
| PerfGraph & | perfGraph () |
| T & | getSampler (const std::string &name) |
| Sampler & | getSampler (const std::string &name) |
| T & | getSamplerByName (const SamplerName &name) |
| Sampler & | getSamplerByName (const SamplerName &name) |
| const VectorPostprocessorValue & | getVectorPostprocessorValue (const std::string ¶m_name, const std::string &vector_name) const |
| const VectorPostprocessorValue & | getVectorPostprocessorValue (const std::string ¶m_name, const std::string &vector_name, bool needs_broadcast) const |
| const VectorPostprocessorValue & | getVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name) const |
| const VectorPostprocessorValue & | getVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name, bool needs_broadcast) const |
| const VectorPostprocessorValue & | getVectorPostprocessorValueOld (const std::string ¶m_name, const std::string &vector_name) const |
| const VectorPostprocessorValue & | getVectorPostprocessorValueOld (const std::string ¶m_name, const std::string &vector_name, bool needs_broadcast) const |
| const VectorPostprocessorValue & | getVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name) const |
| const VectorPostprocessorValue & | getVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name, bool needs_broadcast) const |
| const ScatterVectorPostprocessorValue & | getScatterVectorPostprocessorValue (const std::string ¶m_name, const std::string &vector_name) const |
| const ScatterVectorPostprocessorValue & | getScatterVectorPostprocessorValueByName (const VectorPostprocessorName &name, const std::string &vector_name) const |
| const ScatterVectorPostprocessorValue & | getScatterVectorPostprocessorValueOld (const std::string ¶m_name, const std::string &vector_name) const |
| const ScatterVectorPostprocessorValue & | getScatterVectorPostprocessorValueOldByName (const VectorPostprocessorName &name, const std::string &vector_name) const |
| bool | hasVectorPostprocessor (const std::string ¶m_name, const std::string &vector_name) const |
| bool | hasVectorPostprocessor (const std::string ¶m_name) const |
| bool | hasVectorPostprocessorByName (const VectorPostprocessorName &name, const std::string &vector_name) const |
| bool | hasVectorPostprocessorByName (const VectorPostprocessorName &name) const |
| const VectorPostprocessorName & | getVectorPostprocessorName (const std::string ¶m_name) const |
| DenseMatrix< Real > | getGlobalSamples () |
| DenseMatrix< Real > | getGlobalSamples () |
| DenseMatrix< Real > | getLocalSamples () |
| DenseMatrix< Real > | getLocalSamples () |
| dof_id_type | getLocalRowBegin () const |
| dof_id_type | getLocalRowBegin () const |
| dof_id_type | getLocalRowEnd () const |
| dof_id_type | getLocalRowEnd () const |
| const Distribution & | getDistribution (const std::string &name) const |
| const T & | getDistribution (const std::string &name) const |
| const Distribution & | getDistribution (const std::string &name) const |
| const T & | getDistribution (const std::string &name) const |
| const Distribution & | getDistributionByName (const DistributionName &name) const |
| const T & | getDistributionByName (const std::string &name) const |
| const Distribution & | getDistributionByName (const DistributionName &name) const |
| const T & | getDistributionByName (const std::string &name) const |
| bool | isVectorPostprocessorDistributed (const std::string ¶m_name) const |
| bool | isVectorPostprocessorDistributed (const std::string ¶m_name) const |
| bool | isVectorPostprocessorDistributedByName (const VectorPostprocessorName &name) const |
| bool | isVectorPostprocessorDistributedByName (const VectorPostprocessorName &name) const |
| const Parallel::Communicator & | comm () const |
| processor_id_type | n_processors () const |
| processor_id_type | processor_id () const |
Static Public Member Functions | |
| static InputParameters | validParams () |
| static void | callMooseError (MooseApp *const app, const InputParameters ¶ms, std::string msg, const bool with_prefix, const hit::Node *node) |
Public Attributes | |
| usingCombinedWarningSolutionWarnings | |
| const ConsoleStream | _console |
Static Public Attributes | |
| static const std::string | type_param |
| static const std::string | name_param |
| static const std::string | unique_name_param |
| static const std::string | app_param |
| static const std::string | moose_base_param |
| static const std::string | kokkos_object_param |
Protected Types | |
| enum | CommMethod |
Protected Member Functions | |
| virtual Real | computeSample (dof_id_type row_index, dof_id_type col_index) override |
| virtual void | sampleSetUp (const Sampler::SampleMode mode) override |
| Used to setup matrices for trajectory computation. More... | |
| virtual LocalRankConfig | constructRankConfig (bool batch_mode) const override |
| Morris sampling should have a slightly different partitioning in order to keep the sample and resample samplers distributed and make computing indices more efficient. More... | |
| void | setNumberOfRandomSeeds (std::size_t number) |
| Real | getRand (unsigned int index=0) |
| uint32_t | getRandl (unsigned int index, uint32_t lower, uint32_t upper) |
| void | flagInvalidSolutionInternal (const InvalidSolutionID invalid_solution_id) const |
| InvalidSolutionID | registerInvalidSolutionInternal (const std::string &message, const bool warning) const |
| PerfID | registerTimedSection (const std::string §ion_name, const unsigned int level) const |
| PerfID | registerTimedSection (const std::string §ion_name, const unsigned int level, const std::string &live_message, const bool print_dots=true) const |
| std::string | timedSectionName (const std::string §ion_name) const |
| virtual void | addVectorPostprocessorDependencyHelper (const VectorPostprocessorName &) const |
| const ReporterContextBase & | getReporterContextBaseByName (const ReporterName &reporter_name) const |
| const ReporterName & | getReporterName (const std::string ¶m_name) const |
| virtual void | addReporterDependencyHelper (const ReporterName &) |
| void | setNumberOfRows (dof_id_type n_rows) |
| void | setNumberOfRows (dof_id_type n_rows) |
| void | setNumberOfCols (dof_id_type n_cols) |
| void | setNumberOfCols (dof_id_type n_cols) |
| virtual void | sampleTearDown (const SampleMode) |
| virtual void | sampleTearDown (const SampleMode) |
| virtual void | computeSampleMatrix (DenseMatrix< Real > &matrix) |
| virtual void | computeSampleMatrix (DenseMatrix< Real > &matrix) |
| virtual void | computeLocalSampleMatrix (DenseMatrix< Real > &matrix) |
| virtual void | computeLocalSampleMatrix (DenseMatrix< Real > &matrix) |
| virtual void | computeSampleRow (dof_id_type i, std::vector< Real > &data) |
| virtual void | computeSampleRow (dof_id_type i, std::vector< Real > &data) |
| virtual void | advanceGenerators (const dof_id_type count) |
| virtual void | advanceGenerators (const dof_id_type count) |
| virtual void | advanceGenerator (const unsigned int seed_index, const dof_id_type count) |
| virtual void | advanceGenerator (const unsigned int seed_index, const dof_id_type count) |
| void | setAutoAdvanceGenerators (const bool state) |
| void | setAutoAdvanceGenerators (const bool state) |
| void | shuffle (std::vector< T > &data, const std::size_t seed_index=0, const CommMethod method=CommMethod::LOCAL) |
| void | shuffle (std::vector< T > &data, const std::size_t seed_index=0, const CommMethod method=CommMethod::LOCAL) |
| virtual void | executeSetUp () |
| virtual void | executeSetUp () |
| virtual void | executeTearDown () |
| virtual void | executeTearDown () |
| void | saveGeneratorState () |
| void | saveGeneratorState () |
| void | restoreGeneratorState () |
| void | restoreGeneratorState () |
| const T & | getReporterValue (const std::string ¶m_name, const std::size_t time_index=0) |
| const T & | getReporterValue (const std::string ¶m_name, ReporterMode mode, const std::size_t time_index=0) |
| const T & | getReporterValue (const std::string ¶m_name, const std::size_t time_index=0) |
| const T & | getReporterValue (const std::string ¶m_name, ReporterMode mode, const std::size_t time_index=0) |
| const T & | getReporterValueByName (const ReporterName &reporter_name, const std::size_t time_index=0) |
| const T & | getReporterValueByName (const ReporterName &reporter_name, ReporterMode mode, const std::size_t time_index=0) |
| const T & | getReporterValueByName (const ReporterName &reporter_name, const std::size_t time_index=0) |
| const T & | getReporterValueByName (const ReporterName &reporter_name, ReporterMode mode, const std::size_t time_index=0) |
| bool | hasReporterValue (const std::string ¶m_name) const |
| bool | hasReporterValue (const std::string ¶m_name) const |
| bool | hasReporterValue (const std::string ¶m_name) const |
| bool | hasReporterValue (const std::string ¶m_name) const |
| bool | hasReporterValueByName (const ReporterName &reporter_name) const |
| bool | hasReporterValueByName (const ReporterName &reporter_name) const |
| bool | hasReporterValueByName (const ReporterName &reporter_name) const |
| bool | hasReporterValueByName (const ReporterName &reporter_name) const |
Protected Attributes | |
| const dof_id_type & | _num_trajectories |
| Number of trajectories. More... | |
| const unsigned int & | _num_levels |
| Number of levels used for input space discretization. More... | |
| std::vector< const Distribution * > | _distributions |
| Distribution to determine parameter from perturbations. More... | |
| NONE | |
| LOCAL | |
| SEMI_LOCAL | |
| const dof_id_type | _min_procs_per_row |
| const dof_id_type | _max_procs_per_row |
| libMesh::Parallel::Communicator | _local_comm |
| const bool & | _enabled |
| MooseApp & | _app |
| Factory & | _factory |
| ActionFactory & | _action_factory |
| const std::string & | _type |
| const std::string & | _name |
| const InputParameters & | _pars |
| const ExecFlagEnum & | _execute_enum |
| const ExecFlagType & | _current_execute_flag |
| MooseApp & | _pg_moose_app |
| const std::string | _prefix |
| const Parallel::Communicator & | _communicator |
Private Member Functions | |
| void | updateBstar () |
| Function to calculate trajectories This is only called once per trajectory (_n_rows / (_n_cols + 1)) More... | |
Private Attributes | |
| RealEigenMatrix | _b |
| RealEigenMatrix | _pstar |
| RealEigenMatrix | _j |
| RealEigenMatrix | _dstar |
| RealEigenMatrix | _xstar |
| RealEigenMatrix | _bstar |
A class used to perform Monte Carlo sampling for performing Morris sensitivity analysis.
Definition at line 18 of file MorrisSampler.h.
| MorrisSampler::MorrisSampler | ( | const InputParameters & | parameters | ) |
Definition at line 39 of file MorrisSampler.C.
|
overrideprotectedvirtual |
Implements Sampler.
Definition at line 65 of file MorrisSampler.C.
|
overrideprotectedvirtual |
Morris sampling should have a slightly different partitioning in order to keep the sample and resample samplers distributed and make computing indices more efficient.
Reimplemented from Sampler.
Definition at line 111 of file MorrisSampler.C.
|
overrideprotectedvirtual |
Used to setup matrices for trajectory computation.
Reimplemented from Sampler.
Definition at line 53 of file MorrisSampler.C.
|
private |
Function to calculate trajectories This is only called once per trajectory (_n_rows / (_n_cols + 1))
Definition at line 74 of file MorrisSampler.C.
Referenced by computeSample().
|
static |
Definition at line 16 of file MorrisSampler.C.
|
private |
Matrices used for trajector computation
Definition at line 56 of file MorrisSampler.h.
Referenced by sampleSetUp(), and updateBstar().
|
private |
Definition at line 61 of file MorrisSampler.h.
Referenced by computeSample(), sampleSetUp(), and updateBstar().
|
protected |
Distribution to determine parameter from perturbations.
Definition at line 45 of file MorrisSampler.h.
Referenced by computeSample(), constructRankConfig(), and MorrisSampler().
|
private |
Definition at line 59 of file MorrisSampler.h.
Referenced by sampleSetUp(), and updateBstar().
|
private |
Definition at line 58 of file MorrisSampler.h.
Referenced by sampleSetUp(), and updateBstar().
|
protected |
Number of levels used for input space discretization.
Definition at line 43 of file MorrisSampler.h.
Referenced by updateBstar().
|
protected |
Number of trajectories.
Definition at line 41 of file MorrisSampler.h.
Referenced by constructRankConfig(), and MorrisSampler().
|
private |
Definition at line 57 of file MorrisSampler.h.
Referenced by sampleSetUp(), and updateBstar().
|
private |
Definition at line 60 of file MorrisSampler.h.
Referenced by sampleSetUp(), and updateBstar().
1.8.14