cloudy
trunk
|
Go to the source code of this file.
Data Structures | |
struct | t_optimize |
Macros | |
#define | VRSNEW 3.00f |
#define | CNTFILE "continue.pmr" |
#define | LIMEXT 5L |
#define | LIMPAR 20L |
#define | NCOLLM 100L |
#define | NOBSLM 100L |
Functions | |
bool | lgOptimize_do (void) |
void | vary_input (bool *lgLimOK) |
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[], realnum[], long, realnum *, realnum) |
double | optimize_func (realnum param[]) |
Variables | |
EXTERN char | chOptimFileName [INPUT_LINE_LENGTH] |
EXTERN struct t_optimize | optimize |
#define CNTFILE "continue.pmr" |
this is the name of the file that optimize_phymir automatically creates containing information to continue the optimization at a later time.
Definition at line 49 of file optimize.h.
Referenced by optimize_phymir().
#define LIMEXT 5L |
the limit to the number of numbers on the command line
Definition at line 58 of file optimize.h.
Referenced by ParseDLaw(), ParseTable(), and ParseTLaw().
#define LIMPAR 20L |
Definition at line 59 of file optimize.h.
Referenced by cdInit(), grid_do(), gridXspec(), lgOptimize_do(), optimize_phymir(), ParseCommands(), ParseGrid(), punchFITS_ParamData(), punchFITS_ParamHeader(), punchFITS_SpectraData(), and punchFITS_SpectraHeader().
#define NCOLLM 100L |
Definition at line 60 of file optimize.h.
Referenced by GetOptColDen().
#define NOBSLM 100L |
Definition at line 61 of file optimize.h.
Referenced by GetOptLineInt(), GetOptTemp(), and optimize_func().
#define VRSNEW 3.00f |
<I4> default to INTEGER*4
Definition at line 45 of file optimize.h.
Referenced by optimize_phymir(), and rd_continue().
bool lgOptimize_do | ( | void | ) |
called instead of cloudy to do optimize routine,
Definition at line 13 of file optimize_do.cpp.
References AS_LOCAL_ONLY, called, cdEXIT, t_input::chCardSav, chOptimFileName, t_optimize::chOptRtn, t_optimize::chVarFmt, DEBUG_ENTRY, input, t_optimize::ioOptim, ioQQQ, lgAbort, t_prt::lgFaintOn, t_optimize::lgOptimFlow, t_called::lgTalk, t_called::lgTalkIsOK, LIMPAR, MAX2, MIN2, t_optimize::nIterOptim, t_optimize::nOptimiz, NPLXMX, t_input::nSave, t_optimize::nvarxt, t_optimize::nvary, t_optimize::nvfpnt, open_data(), t_optimize::OptGlobalErr, optimize, optimize_func(), optimize_phymir(), optimize_subplex(), prt, TotalInsanity(), t_optimize::varang, t_optimize::varmax, t_optimize::varmin, t_optimize::vincr, and t_optimize::vparm.
Referenced by grid_do().
double optimize_func | ( | realnum | param[] | ) |
optimize_func actual function called during evaluation of optimization run
Definition at line 18 of file optimize_func.cpp.
References ASSERT, called, cap4(), cdColm(), cdEXIT, cdLine(), cdTemp(), cdWarnings(), t_tag_LineSv::chALab, t_input::chCardSav, t_optimize::chColDen_error, t_optimize::chColDen_label, chi2_func(), t_optimize::chLineLabel, t_optimize::chTempLab, t_optimize::chTempWeight, t_optimize::chVarFmt, cloudy(), t_optimize::ColDen_Obs, t_radius::Conv2PrtInten, DEBUG_ENTRY, grid, input, t_optimize::ion_ColDen, t_optimize::ionTemp, ioQQQ, t_LineSave::ipNormWavL, t_grid::lgGrid, t_LineSave::lgLineEmergent, t_optimize::lgOptCol, t_optimize::lgOptimFlow, t_optimize::lgOptimize, t_optimize::lgOptLin, t_optimize::lgOptLum, t_optimize::lgOptTemp, t_called::lgTalk, LineSave, LineSv, MAX2, MAXCAT, MIN2, t_optimize::ncobs, t_optimize::nlobs, NOBSLM, t_optimize::nOptimiz, t_optimize::nTempObs, t_optimize::nvarxt, t_optimize::nvary, t_optimize::nvfpnt, t_optimize::optier, optimize, t_optimize::optint, PrintE82(), prt_wl(), radius, t_optimize::SavGenericData, t_LineSave::ScaleNormLine, t_tag_LineSv::sumlin, t_optimize::temp_error, t_optimize::temp_obs, t_optimize::varang, t_optimize::varmax, t_optimize::varmin, vary_input(), t_optimize::vparm, t_optimize::vpused, 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().
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
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().
void vary_input | ( | bool * | lgLimOK | ) |
vary_input sets input lines to feed into cloudy in optimization runs
*lgLimOK |
Definition at line 9 of file vary_input.cpp.
References cdEXIT, t_input::chCardSav, t_optimize::chVarFmt, DEBUG_ENTRY, input, ioQQQ, MAX2, MIN2, t_optimize::nvarxt, t_optimize::nvary, t_optimize::nvfpnt, optimize, t_optimize::varang, t_optimize::vparm, and t_optimize::vpused.
Referenced by optimize_func().
EXTERN char chOptimFileName[INPUT_LINE_LENGTH] |
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().
EXTERN struct t_optimize optimize |
Referenced by abund_starburst(), cdDrive(), cdInit(), cdRead(), GetOptColDen(), GetOptLineInt(), GetOptTemp(), grid_do(), GridGatherAfterCloudy(), GridGatherInCloudy(), gridXspec(), InitDefaultsPreparse(), lgCheckAsserts(), lgOptimize_do(), optimize_func(), optimize_phymir(), ParseAssertResults(), ParseCommands(), ParseConstant(), ParseCoronal(), ParseCosmicRays(), ParseDLaw(), ParseElement(), ParseGlobule(), ParseGrain(), ParseGrid(), ParseHDEN(), ParseIonPar(), ParseMagnet(), ParseMetal(), ParseOptimize(), ParsePowerlawContinuum(), ParsePunch(), ParseRadius(), ParseRatio(), ParseSet(), ParseStop(), ParseTable(), ParseTLaw(), PunchDo(), SetLimits(), and vary_input().