BlockedProposer Class module:propose file:propose

Subroutines Expand Arguments

  • GetBlockProposal(this, i, P)
    • BlockedProposer   :: this
    • integer intent(in) :: i i must be first in gfortran
    • real(mcp)  :: P(:)
  • GetProposal(this, P)
  • GetProposalFast(this, P)
  • GetProposalFastDelta(this, P)
  • GetProposalSlow(this, P)
  • Init(this, parameter_blocks, slow_block_max, oversample_fast, propose_scale)

    slow_block_max determines which parameter blocks are grouped together as being 'slow'

    • BlockedProposer target  :: this
    • int_arr   :: parameter_blocks(:)
    • integer intent(in) :: slow_block_max
    • integer intent(in), optional :: oversample_fast
    • real(mcp) intent(in), optional :: propose_scale
  • SetCovariance(this, propose_matrix)

    take covariance of used parameters (propose_matrix), and construct orthonormal parmeters where orthonormal parameters are grouped in blocks by speed, so changes in slowest block changes slow and fast parameters, but changes in the fastest block only changes fast parameters