/home66/gary/public_html/cloudy/c10_branch/source/optimize.h File Reference

#include "energy.h"
#include "flux.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.

Data Structures

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

bool lgOptimize_do (void)
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(4.00)
const chi2_type BIG_CHI2 = chi2_type(FLT_MAX)
const long LIMEXT = 5L
const long LIMPAR = 20L
EXTERN char chOptimFileName [INPUT_LINE_LENGTH]
EXTERN struct t_optimize optimize

Typedef Documentation

typedef double chi2_type

Definition at line 49 of file optimize.h.


Enumeration Type Documentation

Enumerator:
PHYMIR_ILL 
PHYMIR_SEQ 
PHYMIR_FORK 
PHYMIR_MPI 

Definition at line 65 of file optimize.h.


Function Documentation

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

optimize_func actual function called during evaluation of optimization run

Definition at line 20 of file optimize_func.cpp.

References AS1RAD, ASSERT, BIG_CHI2, called, cap4(), cdColm(), cdEXIT, cdLine(), cdTemp(), cdWarnings(), t_tag_LineSv::chALab, t_input::chCardSav, t_optimize::chColDen_label, chi2_func(), t_optimize::chLineLabel, t_optimize::chOptRtn, t_optimize::chTempLab, t_optimize::chTempWeight, t_optimize::chVarFmt, cloudy(), t_optimize::ColDen_error, t_optimize::ColDen_Obs, t_optimize::ContEner, t_optimize::ContIndex, t_optimize::ContNFnu, t_optimize::ContNFnuErr, t_radius::Conv2PrtInten, cpu, DEBUG_ENTRY, t_radius::distance, grid, input, Singleton< t_PredCont >::Inst(), t_optimize::ion_ColDen, t_optimize::ionTemp, ioQQQ, t_LineSave::ipNormWavL, t_optimize::ipobs, t_optimize::lgDiamInCM, t_grid::lgGrid, t_cpu::lgMPI(), t_optimize::lgOptDiam, t_optimize::lgOptimFlow, t_optimize::lgOptimize, t_optimize::lgOptLum, t_called::lgTalk, t_rfield::lgUSphON, LineSave, LineSv, max(), min(), t_optimize::nEmergent, t_optimize::nOptimiz, t_optimize::nOptLum, t_optimize::nvarxt, t_optimize::nvary, t_optimize::nvfpnt, t_PredCont::offset(), t_optimize::optDiam, t_optimize::optDiamErr, t_optimize::optier, optimize, t_optimize::optint, pow(), prt_wl(), t_radius::Radius, radius, rfield, t_rfield::rstrom, t_optimize::SavGenericData, t_LineSave::ScaleNormLine, SMALLFLOAT, t_tag_LineSv::SumLine, t_optimize::temp_error, t_optimize::temp_obs, t_optimize::varang, t_optimize::varmax, t_optimize::varmin, vary_input(), t_optimize::vparm, wavelength, t_tag_LineSv::wavelength, t_optimize::wavelength, t_optimize::xLineInt_error, t_optimize::xLineInt_Obs, and zero().

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

Here is the call graph for this function:

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

Referenced by lgOptimize_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 

Definition at line 64 of file optimize_subplx.cpp.

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 lgOptimize_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)

Definition at line 51 of file optimize.h.

Referenced by chi2_func(), and optimize_func().

file name for output, set in cddefines.c

Definition at line 63 of file optimize.h.

Referenced by grid_do(), InitCoreload(), lgOptimize_do(), and ParseOptimize().

const long LIMEXT = 5L

the limit to the number of numbers on the command line

Definition at line 60 of file optimize.h.

Referenced by ParseTable(), and ParseTLaw().

const long LIMPAR = 20L
EXTERN struct t_optimize optimize

logical variable says whether current line image has vary option

optimize increments, deltas for changing optimized variables range for optimize command io unit for final best parameters from optimizer limit to number of iterations for optimizer, set with optimize iterations command set with optimize tolerance command, used for global match to fit default set in scalar to 0.10 current counter for the number of calls to the optimizer
lgTrOpt flag set with optimization trace command
nTrOpt is which call to cloudy to turn on trace
flags set if we are to optimize lines, luminosity, or colums

labels for column densities on vary command
this specifies the optimization routine
'amoe', 'powe', 'bubr'

Referenced by abund_starburst(), cdDrive(), cdInit(), cdRead(), GetOptColDen(), GetOptLineInt(), GetOptTemp(), grid_do(), GridGatherInCloudy(), gridXspec(), InitCoreload(), InitDefaultsPreparse(), lgCheckMonitors(), lgOptimize_do(), main(), optimize_func(), optimize_phymir(), ParseAtomISO(), ParseBlackbody(), ParseBremsstrahlung(), ParseCommands(), ParseConstant(), ParseCoronal(), ParseCosmicRays(), ParseDarkMatter(), ParseDistance(), ParseDLaw(), ParseElement(), ParseEnergy(), ParseFill(), ParseFudge(), ParseGlobule(), ParseGrain(), ParseGrid(), ParseHDEN(), ParseHExtra(), ParseIlluminate(), ParseIntensity(), ParseIonPar(), ParseLuminosity(), ParseMagnet(), ParseMetal(), ParseMonitorResults(), ParseOptimize(), ParsePhi(), ParsePowerlawContinuum(), ParseQH(), ParseRadius(), ParseRatio(), ParseSave(), ParseSet(), ParseStop(), ParseTable(), ParseTLaw(), ParseTurbulence(), SaveDo(), SetLimits(), and vary_input().

const realnum VRSNEW = realnum(4.00)

<I4> default to INTEGER*4

Definition at line 47 of file optimize.h.

Referenced by phymir_state< X, Y, NP, NSTR >::continue_from_state(), and phymir_state< X, Y, NP, NSTR >::p_clear1().

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 15 Nov 2012 for cloudy by  doxygen 1.6.1