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
xval (int i) const
xmin (int i) const
xmax (int i) const
yval () const
int32 noptim () const

Private Member Functions

void p_clear1 ()
void p_wr_state (const char *) const
void p_rd_state (const char *)
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
p_delta (int i, int j) const
void p_reset_transformation_matrix ()

Private Attributes

p_xmax
p_ymax
p_xp [2 *NP+1][NP]
p_yp [2 *NP+1]
p_absmin [NP]
p_absmax [NP]
p_varmin [NP]
p_varmax [NP]
p_a2 [NP][NP]
p_c1 [NP]
p_c2 [NP]
p_xc [NP]
p_xcold [NP]
p_vers
p_toler
p_dmax
p_dold
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,
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[],
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 ( 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