Alternaria
fit cylinders and ellipsoids to fungus
|
#include <alternaria_moves.h>
Public Member Functions | |
Spore_split_merge_2_apical_move (const char *split_name, const char *merge_name, double split_prob=1.0, double merge_prob=1.0) throw (jwscxx::base::Arg_error) | |
Constructs a Spore_transition_apical_move. | |
bool | run_1 (Sampler_move_parameters *params) throw (jwscxx::base::Exception) |
Runs the apical-to-spore jump move and either accepts or rejects. | |
bool | run_2 (Sampler_move_parameters *params) throw (jwscxx::base::Exception) |
Runs the spore-to-apical jump move and either accepts or rejects. | |
Static Protected Member Functions | |
static void | propose_1st_split (Apical_hypha **proposal_out, double *log_prob_out, const Apical_hypha_density *density, const Spore *spore) throw (jwscxx::base::Arg_error) |
Creates the first split proposal. | |
static void | propose_2nd_split (Apical_hypha **proposal_out, double *log_prob_out, const Apical_hypha *split_1) throw (jwscxx::base::Arg_error) |
Creates the second split proposal. | |
static void | propose_merge (Spore **proposal_out, double *log_prob_out, const Structure *parent, const Spore_density *density, const Apical_hypha *hypha_1, const Apical_hypha *hypha_2) throw (jwscxx::base::Arg_error) |
Creates the merge proposal. |
MCMC Sampler move that proposes splitting/merging 2 Apical_hypha from/into a Spore.
Definition at line 204 of file alternaria_moves.h.
Spore_split_merge_2_apical_move::Spore_split_merge_2_apical_move | ( | const char * | split_name, |
const char * | merge_name, | ||
double | split_prob = 1.0 , |
||
double | merge_prob = 1.0 |
||
) | throw (jwscxx::base::Arg_error) [inline] |
Constructs a Spore_transition_apical_move.
Definition at line 210 of file alternaria_moves.h.
bool Spore_split_merge_2_apical_move::run_1 | ( | Sampler_move_parameters * | params | ) | throw (jwscxx::base::Exception) [virtual] |
Runs the apical-to-spore jump move and either accepts or rejects.
========================================================================= ----------------- Spore_split_merge_2_apical_move ---------------------
params | Parameters for the move. |
Implements Sampler_jump_move.
Definition at line 624 of file alternaria_moves.cpp.
bool Spore_split_merge_2_apical_move::run_2 | ( | Sampler_move_parameters * | params | ) | throw (jwscxx::base::Exception) [virtual] |
Runs the spore-to-apical jump move and either accepts or rejects.
params | Parameters for the move. |
Implements Sampler_jump_move.
Definition at line 715 of file alternaria_moves.cpp.
void Spore_split_merge_2_apical_move::propose_1st_split | ( | Apical_hypha ** | proposal_out, |
double * | log_prob_out, | ||
const Apical_hypha_density * | density, | ||
const Spore * | spore | ||
) | throw (jwscxx::base::Arg_error) [static, protected] |
Creates the first split proposal.
proposal_out | Result parameter. The first split hypha proposal. |
log_prob_out | Result parameter. The log probability of *proposal_out. |
density | Density over Apical_hypha. |
spore | Structure to split. |
Definition at line 813 of file alternaria_moves.cpp.
void Spore_split_merge_2_apical_move::propose_2nd_split | ( | Apical_hypha ** | proposal_out, |
double * | log_prob_out, | ||
const Apical_hypha * | split_1 | ||
) | throw (jwscxx::base::Arg_error) [static, protected] |
Creates the second split proposal.
proposal_out | Result parameter. The second split hypha proposal. |
log_prob_out | Result parameter. The log probability of *proposal_out. |
split_1 | First split hypha proposal. |
Definition at line 971 of file alternaria_moves.cpp.
void Spore_split_merge_2_apical_move::propose_merge | ( | Spore ** | proposal_out, |
double * | log_prob_out, | ||
const Structure * | parent, | ||
const Spore_density * | density, | ||
const Apical_hypha * | hypha_1, | ||
const Apical_hypha * | hypha_2 | ||
) | throw (jwscxx::base::Arg_error) [static, protected] |
Creates the merge proposal.
proposal_out | Result parameter. The merged spore proposal. |
log_prob_out | Result parameter. The log probability of *proposal_out. |
parent | Parent structure of hypha_1. |
density | Density over Spore. |
hypha_1 | First hypha to merge. |
hypha_2 | Second hypha proposal. |
Definition at line 1072 of file alternaria_moves.cpp.