https://mooseframework.inl.gov
AffineInvariantStretchSampler.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://mooseframework.inl.gov
3 //*
4 //* All rights reserved, see COPYRIGHT for full restrictions
5 //* https://github.com/idaholab/moose/blob/master/COPYRIGHT
6 //*
7 //* Licensed under LGPL 2.1, please see LICENSE for details
8 //* https://www.gnu.org/licenses/lgpl-2.1.html
9 
10 #pragma once
11 
12 #include "PMCMCBase.h"
13 
18 {
19 public:
21 
23 
24  virtual int decisionStep() const override { return 2; }
25 
29  const std::vector<Real> & getAffineStepSize() const;
30 
31 protected:
32  virtual void proposeSamples(const unsigned int seed_value) override;
33 
36 
38  const std::vector<std::vector<Real>> & _previous_state;
39 
41  const std::vector<Real> & _previous_state_var;
42 
44  std::vector<Real> _affine_step;
45 };
virtual int decisionStep() const override
Return the step after which decision making can begin.
std::vector< Real > _affine_step
Vector of affine step sizes.
AffineInvariantStretchSampler(const InputParameters &parameters)
const std::vector< Real > & getAffineStepSize() const
Return the vector of step size for decision making.
const std::vector< std::vector< Real > > & _previous_state
Reporter value with the previous state of all the walkers.
A class for performing Affine Invariant Ensemble MCMC with stretch sampler.
virtual void proposeSamples(const unsigned int seed_value) override
Fill in the _new_samples vector of vectors (happens within sampleSetUp)
const Real _step_size
The step size for the stretch sampler.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
const std::vector< Real > & _previous_state_var
Reporter value with the previous state of all the walkers for variance.
const InputParameters & parameters() const
A base class used to perform Parallel Markov Chain Monte Carlo (MCMC) sampling.
Definition: PMCMCBase.h:19