https://mooseframework.inl.gov
AffineInvariantDES.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 
26 protected:
27  virtual void proposeSamples(const unsigned int seed_value) override;
28 
38  const Real & state1, const Real & state2, const Real & rnd, const Real & scale, Real & diff);
39 
46  void tuneParams(Real & gamma, Real & b, const Real & scale);
47 
49  const std::vector<std::vector<Real>> & _previous_state;
50 
52  const std::vector<Real> & _previous_state_var;
53 
56 
58  std::vector<Real> _scales;
59 };
const MooseEnum & _tuning_option
Tuning options for the internal params.
virtual int decisionStep() const override
Return the step after which decision making can begin.
const std::vector< std::vector< Real > > & _previous_state
Reporter value with the previous state of all the walkers.
static InputParameters validParams()
virtual void proposeSamples(const unsigned int seed_value) override
Fill in the _new_samples vector of vectors (happens within sampleSetUp)
const std::vector< Real > & _previous_state_var
Reporter value with the previous state of all the walkers for variance.
A class for performing Affine Invariant Ensemble MCMC with differential sampler.
void tuneParams(Real &gamma, Real &b, const Real &scale)
Tune the internal parameters.
AffineInvariantDES(const InputParameters &parameters)
const InputParameters & parameters() const
std::vector< Real > _scales
Scales for the parameters.
void computeDifferential(const Real &state1, const Real &state2, const Real &rnd, const Real &scale, Real &diff)
Compute the differential evolution from the current state.
A base class used to perform Parallel Markov Chain Monte Carlo (MCMC) sampling.
Definition: PMCMCBase.h:19