phymir_state< X, Y, NP, NSTR > Class Template Reference

#include <optimize.h>

Collaboration diagram for phymir_state< X, Y, NP, NSTR >:
[legend]

Public Member Functions

 phymir_state ()
void clear ()
void init_minmax (const X[], const X[], int)
void init_state_file_name (const char *)
void init_strings (const char *, const char *, const char *)
void initial_run (Y(*)(const X[], int), int, const X[], const X[], X, int, phymir_mode, int)
void continue_from_state (Y(*)(const X[], int), int, const char *, X, int, phymir_mode, int)
void optimize ()
void optimize_with_restart ()
bool lgMaxIterExceeded () const
bool lgInitialized () const
bool lgConverged () const
bool lgConvergedRestart () const
X xval (int i) const
X xmin (int i) const
X xmax (int i) const
Y yval () const
int32 noptim () const

Private Member Functions

void p_clear1 ()
void p_wr_state (const char *) const
void p_rd_state (const char *)
Y p_execute_job (const X[], int, int)
void p_execute_job_parallel (const X[], int, int) const
void p_barrier (int, int)
void p_process_output (int, int)
void p_evaluate_hyperblock ()
void p_setup_next_hyperblock ()
void p_reset_hyperblock ()
void p_phygrm (X[][NP], int)
bool p_lgLimitExceeded (const X[]) const
X p_delta (int i, int j) const
void p_reset_transformation_matrix ()

Private Attributes

X p_xmax
Y p_ymax
X p_xp [2 *NP+1][NP]
Y p_yp [2 *NP+1]
X p_absmin [NP]
X p_absmax [NP]
X p_varmin [NP]
X p_varmax [NP]
X p_a2 [NP][NP]
X p_c1 [NP]
X p_c2 [NP]
X p_xc [NP]
X p_xcold [NP]
X p_vers
X p_toler
X p_dmax
X p_dold
Y p_ymin
int32 p_dim
int32 p_sdim
int32 p_nvar
int32 p_noptim
int32 p_maxiter
int32 p_jmin
int32 p_maxcpu
int32 p_curcpu
phymir_mode p_mode
char p_chState [NSTR]
char p_chStr1 [NSTR]
char p_chStr2 [NSTR]
char p_chStr3 [NSTR]
uint32 p_size
Y(* p_func )(const X[], int)

Detailed Description

template<class X, class Y = X, int NP = 32, int NSTR = 32>
class phymir_state< X, Y, NP, NSTR >

Definition at line 71 of file optimize.h.


Constructor & Destructor Documentation

template<class X, class Y = X, int NP = 32, int NSTR = 32>
phymir_state< X, Y, NP, NSTR >::phymir_state (  )  [inline]

Definition at line 128 of file optimize.h.

References phymir_state< X, Y, NP, NSTR >::p_clear1().

Here is the call graph for this function:


Member Function Documentation

template<class X, class Y = X, int NP = 32, int NSTR = 32>
void phymir_state< X, Y, NP, NSTR >::clear (  )  [inline]

Definition at line 129 of file optimize.h.

References phymir_state< X, Y, NP, NSTR >::p_clear1().

Here is the call graph for this function:

template<class X , class Y , int NP, int NSTR>
void phymir_state< X, Y, NP, NSTR >::continue_from_state ( Y(*)(const X[], int)  func,
int  nvar,
const char *  fnam,
X  toler,
int  maxiter,
phymir_mode  mode,
int  maxcpu 
) [inline]
template<class X , class Y , int NP, int NSTR>
void phymir_state< X, Y, NP, NSTR >::init_minmax ( const X  pmin[],
const X  pmax[],
int  nvar 
) [inline]
template<class X , class Y , int NP, int NSTR>
void phymir_state< X, Y, NP, NSTR >::init_state_file_name ( const char *  fnam  )  [inline]

Definition at line 525 of file optimize_phymir.cpp.

References DEBUG_ENTRY, and phymir_state< X, Y, NP, NSTR >::p_chState.

Referenced by optimize_phymir().

template<class X , class Y , int NP, int NSTR>
void phymir_state< X, Y, NP, NSTR >::init_strings ( const char *  date,
const char *  version,
const char *  host_name 
) [inline]
template<class X , class Y , int NP, int NSTR>
void phymir_state< X, Y, NP, NSTR >::initial_run ( Y(*)(const X[], int)  func,
int  nvar,
const X  start[],
const X  del[],
X  toler,
int  maxiter,
phymir_mode  mode,
int  maxcpu 
) [inline]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
bool phymir_state< X, Y, NP, NSTR >::lgConverged (  )  const [inline]
template<class X , class Y , int NP, int NSTR>
bool phymir_state< X, Y, NP, NSTR >::lgConvergedRestart (  )  const [inline]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
bool phymir_state< X, Y, NP, NSTR >::lgInitialized (  )  const [inline]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
bool phymir_state< X, Y, NP, NSTR >::lgMaxIterExceeded (  )  const [inline]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
int32 phymir_state< X, Y, NP, NSTR >::noptim (  )  const [inline]

Definition at line 145 of file optimize.h.

References phymir_state< X, Y, NP, NSTR >::p_noptim.

Referenced by optimize_phymir().

template<class X , class Y , int NP, int NSTR>
void phymir_state< X, Y, NP, NSTR >::optimize (  )  [inline]
template<class X , class Y , int NP, int NSTR>
void phymir_state< X, Y, NP, NSTR >::optimize_with_restart (  )  [inline]
template<class X , class Y , int NP, int NSTR>
void phymir_state< X, Y, NP, NSTR >::p_barrier ( int  jlo,
int  jhi 
) [inline, private]
template<class X , class Y , int NP, int NSTR>
void phymir_state< X, Y, NP, NSTR >::p_clear1 (  )  [inline, private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
X phymir_state< X, Y, NP, NSTR >::p_delta ( int  i,
int  j 
) const [inline, private]
template<class X , class Y , int NP, int NSTR>
void phymir_state< X, Y, NP, NSTR >::p_evaluate_hyperblock (  )  [inline, private]
template<class X , class Y , int NP, int NSTR>
Y phymir_state< X, Y, NP, NSTR >::p_execute_job ( const X  x[],
int  jj,
int  runNr 
) [inline, private]
template<class X , class Y , int NP, int NSTR>
void phymir_state< X, Y, NP, NSTR >::p_execute_job_parallel ( const X  x[],
int  jj,
int  runNr 
) const [inline, private]
template<class X , class Y , int NP, int NSTR>
bool phymir_state< X, Y, NP, NSTR >::p_lgLimitExceeded ( const X  x[]  )  const [inline, private]
template<class X , class Y , int NP, int NSTR>
void phymir_state< X, Y, NP, NSTR >::p_phygrm ( X  a[][NP],
int  n 
) [inline, private]

Definition at line 440 of file optimize_phymir.cpp.

References DEBUG_ENTRY, and pow2().

Referenced by phymir_state< X, Y, NP, NSTR >::p_setup_next_hyperblock().

Here is the call graph for this function:

template<class X , class Y , int NP, int NSTR>
void phymir_state< X, Y, NP, NSTR >::p_process_output ( int  jlo,
int  jhi 
) [inline, private]

Definition at line 252 of file optimize_phymir.cpp.

References append_file(), cpu, DEBUG_ENTRY, ioQQQ, t_cpu::lgMaster(), phymir_state< X, Y, NP, NSTR >::p_yp, and rd_block().

Referenced by phymir_state< X, Y, NP, NSTR >::p_barrier().

Here is the call graph for this function:

template<class X , class Y , int NP, int NSTR>
void phymir_state< X, Y, NP, NSTR >::p_rd_state ( const char *  fnam  )  [inline, private]

Definition at line 117 of file optimize_phymir.cpp.

References AS_LOCAL_ONLY, cdEXIT, DEBUG_ENTRY, open_data(), and phymir_state< X, Y, NP, NSTR >::p_size.

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

Here is the call graph for this function:

template<class X , class Y , int NP, int NSTR>
void phymir_state< X, Y, NP, NSTR >::p_reset_hyperblock (  )  [inline, private]
template<class X , class Y , int NP, int NSTR>
void phymir_state< X, Y, NP, NSTR >::p_reset_transformation_matrix (  )  [inline, private]
template<class X , class Y , int NP, int NSTR>
void phymir_state< X, Y, NP, NSTR >::p_setup_next_hyperblock (  )  [inline, private]
template<class X , class Y , int NP, int NSTR>
void phymir_state< X, Y, NP, NSTR >::p_wr_state ( const char *  fnam  )  const [inline, private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
X phymir_state< X, Y, NP, NSTR >::xmax ( int  i  )  const [inline]

Definition at line 143 of file optimize.h.

References min(), phymir_state< X, Y, NP, NSTR >::p_absmax, and phymir_state< X, Y, NP, NSTR >::p_varmax.

Referenced by optimize_phymir().

Here is the call graph for this function:

template<class X, class Y = X, int NP = 32, int NSTR = 32>
X phymir_state< X, Y, NP, NSTR >::xmin ( int  i  )  const [inline]

Definition at line 142 of file optimize.h.

References max(), phymir_state< X, Y, NP, NSTR >::p_absmin, and phymir_state< X, Y, NP, NSTR >::p_varmin.

Referenced by optimize_phymir().

Here is the call graph for this function:

template<class X, class Y = X, int NP = 32, int NSTR = 32>
X phymir_state< X, Y, NP, NSTR >::xval ( int  i  )  const [inline]

Definition at line 141 of file optimize.h.

References phymir_state< X, Y, NP, NSTR >::p_xc.

Referenced by optimize_phymir().

template<class X, class Y = X, int NP = 32, int NSTR = 32>
Y phymir_state< X, Y, NP, NSTR >::yval (  )  const [inline]

Field Documentation

template<class X, class Y = X, int NP = 32, int NSTR = 32>
X phymir_state< X, Y, NP, NSTR >::p_a2[NP][NP] [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
X phymir_state< X, Y, NP, NSTR >::p_absmax[NP] [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
X phymir_state< X, Y, NP, NSTR >::p_absmin[NP] [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
X phymir_state< X, Y, NP, NSTR >::p_c1[NP] [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
X phymir_state< X, Y, NP, NSTR >::p_c2[NP] [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
char phymir_state< X, Y, NP, NSTR >::p_chState[NSTR] [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
char phymir_state< X, Y, NP, NSTR >::p_chStr1[NSTR] [private]

Definition at line 101 of file optimize.h.

Referenced by phymir_state< X, Y, NP, NSTR >::init_strings().

template<class X, class Y = X, int NP = 32, int NSTR = 32>
char phymir_state< X, Y, NP, NSTR >::p_chStr2[NSTR] [private]

Definition at line 102 of file optimize.h.

Referenced by phymir_state< X, Y, NP, NSTR >::init_strings().

template<class X, class Y = X, int NP = 32, int NSTR = 32>
char phymir_state< X, Y, NP, NSTR >::p_chStr3[NSTR] [private]

Definition at line 103 of file optimize.h.

Referenced by phymir_state< X, Y, NP, NSTR >::init_strings().

template<class X, class Y = X, int NP = 32, int NSTR = 32>
int32 phymir_state< X, Y, NP, NSTR >::p_curcpu [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
int32 phymir_state< X, Y, NP, NSTR >::p_dim [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
X phymir_state< X, Y, NP, NSTR >::p_dmax [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
X phymir_state< X, Y, NP, NSTR >::p_dold [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
Y(* phymir_state< X, Y, NP, NSTR >::p_func)(const X[], int) [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
int32 phymir_state< X, Y, NP, NSTR >::p_jmin [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
int32 phymir_state< X, Y, NP, NSTR >::p_maxcpu [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
int32 phymir_state< X, Y, NP, NSTR >::p_maxiter [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
phymir_mode phymir_state< X, Y, NP, NSTR >::p_mode [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
int32 phymir_state< X, Y, NP, NSTR >::p_noptim [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
int32 phymir_state< X, Y, NP, NSTR >::p_nvar [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
int32 phymir_state< X, Y, NP, NSTR >::p_sdim [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
uint32 phymir_state< X, Y, NP, NSTR >::p_size [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
X phymir_state< X, Y, NP, NSTR >::p_toler [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
X phymir_state< X, Y, NP, NSTR >::p_varmax[NP] [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
X phymir_state< X, Y, NP, NSTR >::p_varmin[NP] [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
X phymir_state< X, Y, NP, NSTR >::p_vers [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
X phymir_state< X, Y, NP, NSTR >::p_xc[NP] [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
X phymir_state< X, Y, NP, NSTR >::p_xcold[NP] [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
X phymir_state< X, Y, NP, NSTR >::p_xmax [private]

Definition at line 73 of file optimize.h.

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

template<class X, class Y = X, int NP = 32, int NSTR = 32>
X phymir_state< X, Y, NP, NSTR >::p_xp[2 *NP+1][NP] [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
Y phymir_state< X, Y, NP, NSTR >::p_ymax [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
Y phymir_state< X, Y, NP, NSTR >::p_ymin [private]
template<class X, class Y = X, int NP = 32, int NSTR = 32>
Y phymir_state< X, Y, NP, NSTR >::p_yp[2 *NP+1] [private]

The documentation for this class was generated from the following files:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 15 Nov 2012 for cloudy by  doxygen 1.6.1