Cloudy
Spectral Synthesis Code for Astrophysics
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
optimize.h File Reference
#include "energy.h"
#include "flux.h"
#include "lines.h"
Include dependency graph for optimize.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  phymir_state< X, Y, NP, NSTR >
 
struct  t_optimize
 

Typedefs

typedef double chi2_type
 

Enumerations

enum  phymir_mode { PHYMIR_ILL, PHYMIR_SEQ, PHYMIR_FORK, PHYMIR_MPI }
 

Functions

void optimize_do ()
 
void vary_input (bool *lgLimOK, int grid_index)
 
void optimize_subplex (long int n, double tol, long int maxnfe, long int mode, realnum scale[], realnum x[], realnum *fx, long int *nfe, realnum work[], long int iwork[], long int *iflag)
 
void optimize_phymir (realnum[], const realnum[], long, chi2_type *, realnum)
 
chi2_type optimize_func (const realnum param[], int grid_index=-1)
 

Variables

const realnum VRSNEW = realnum(5.00)
 
const chi2_type BIG_CHI2 = chi2_type(FLT_MAX)
 
const long LIMEXT = 5L
 
const long LIMPAR = 20L
 
string chOptimFileName
 
t_optimize optimize
 

Typedef Documentation

typedef double chi2_type

Enumeration Type Documentation

Enumerator
PHYMIR_ILL 
PHYMIR_SEQ 
PHYMIR_FORK 
PHYMIR_MPI 

Function Documentation

chi2_type optimize_func ( const realnum  param[],
int  grid_index = -1 
)

optimize_func actual function called during evaluation of optimization run

References ASSERT, BIG_CHI2, called, cdColm(), cdEXIT, cdTemp(), cdWarnings(), t_optimize::chColDen_label, chi2_func(), t_optimize::chOptRtn, t_optimize::chTempLab, t_optimize::chTempWeight, cloudy(), t_optimize::ColDen_error, t_optimize::ColDen_Obs, t_optimize::ContEner, t_optimize::ContIndex, t_optimize::ContNFnu, t_optimize::ContNFnuErr, t_radius::Conv2PrtInten, t_input::crd, DEBUG_ENTRY, t_radius::distance, EXIT_FAILURE, exp10(), t_LineSave::findline(), fprintf(), grid, input, Singleton< T >::Inst(), t_optimize::ion_ColDen, t_optimize::ionTemp, ioQQQ, t_LineSave::ipNormWavL, t_optimize::ipobs, t_optimize::lgDiamInCM, t_grid::lgGrid, t_optimize::lgOptDiam, t_optimize::lgOptimFlow, t_optimize::lgOptimize, t_optimize::lgOptLum, t_called::lgTalk, t_rfield::lgUSphON, t_optimize::lineids, t_LineSave::lines, LineSave, MakeInputLine(), max(), min(), t_optimize::nEmergent, t_optimize::nOptimiz, t_optimize::nOptLum, t_optimize::nvary, t_optimize::nvfpnt, t_optimize::optDiam, t_optimize::optDiamErr, t_optimize::optier, optimize, t_optimize::optint, radius, t_radius::Radius, rfield, t_rfield::rstrom, t_optimize::SavGenericData, t_LineSave::ScaleNormLine, SMALLFLOAT, t_optimize::temp_error, t_optimize::temp_obs, t_optimize::varang, t_optimize::varmax, t_optimize::varmin, vary_input(), t_optimize::vparm, t_optimize::xLineInt_error, t_optimize::xLineInt_Obs, and zero().

Referenced by evalf(), gridXspec(), optimize_do(), and optimize_phymir().

Here is the call graph for this function:

void optimize_phymir ( realnum  [],
const realnum  [],
long  ,
chi2_type ,
realnum   
)

Referenced by optimize_do().

void optimize_subplex ( long int  n,
double  tol,
long int  maxnfe,
long int  mode,
realnum  scale[],
realnum  x[],
realnum fx,
long int *  nfe,
realnum  work[],
long int  iwork[],
long int *  iflag 
)

optimize_subplex is the main driver, and only exposed, routine for the cowan downhill simplex routine

Parameters
n
tol
maxnfe
mode
scale[]
x[]
*fx
*nfe
work[]
iwork[]
*iflag

References t_usubc::alpha, t_usubc::beta, t_usubc::bonus, cdcopy(), DEBUG_ENTRY, t_usubc::delta, evalf(), t_isubc::fbonus, fp_equal(), t_usubc::fstop, t_usubc::ftest, t_usubc::gamma, t_usubc::ifxsw, t_usubc::initx, t_isubc::IntNew, t_usubc::irepl, isubc, MAX2, t_usubc::minf, t_usubc::nfstop, t_usubc::nfxe, t_usubc::nsmax, t_usubc::nsmin, t_usubc::omega, partx(), POW2, t_usubc::psi, setstp(), t_isubc::sfstop, simplx(), sortd(), subopt(), and usubc.

Referenced by optimize_do().

Here is the call graph for this function:

void vary_input ( bool *  lgLimOK,
int  grid_index 
)

Variable Documentation

const chi2_type BIG_CHI2 = chi2_type(FLT_MAX)

Referenced by chi2_func(), and optimize_func().

string chOptimFileName

Referenced by grid_do(), optimize_do(), and ParseOptimize().

const long LIMEXT = 5L

the limit to the number of numbers on the command line

Referenced by ParseTable(), and ParseTLaw().