SICOPOLIS V5-dev  Revision 1368
Data Types | Modules | Functions/Subroutines | Variables
revolve.f90 File Reference

Go to the source code of this file.

Data Types

type  revolve::rvAction
 this encapsulates all the information needed to perfrom the correct action an instance is returned from rvNextAction More...
 

Modules

module  revolve
 the module containing the revolve implementation
 

Functions/Subroutines

logical function, public revolve::rvInit (steps, checkpoints, errorMsgRevolve, anActionInstance, bundle)
 method to initialize the internal state; must be called before any call to rvNextAction More...
 
logical function, public revolve::rvAdjust (steps, checkpoints, errorMsgRevolve)
 method to change the internal state for the total number of steps/checkpoints; must be called after rvInit More...
 
subroutine, public revolve::rvVerbose (level)
 method to set the verbosity to a level in [0-3] as described for ourVerbosity More...
 
type(rvaction) function, public revolve::rvNextAction ()
 the method to determine the next action; to be called in an unbound loop after rvInit More...
 
integer function, public revolve::rvGuess (steps, bundle)
 estimates the number of checkpoints required; equivalent to adjust in Alg. 799 More...
 
double precision function, public revolve::rvFactor (steps, checkpoints, bundle)
 computes the run time overhead factor; equivalent to expense in Alg. 799 More...
 

Variables

integer, parameter, public revolve::rvstore =1
 store a checkpoint now equivalent to TAKESHOT in Alg. 799 More...
 
integer, parameter, public revolve::rvrestore =2
 restore a checkpoint now equivalent to RESTORE in Alg. 799 More...
 
integer, parameter, public revolve::rvforward =3
 execute iteration(s) forward equivalent to ADVANCE in Alg. 799 More...
 
integer, parameter, public revolve::rvfirstuturn =4
 tape iteration(s); optionally leave to return later; and (upon return) do the adjoint(s) equivalent to FIRSTTURN in Alg. 799 More...
 
integer, parameter, public revolve::rvuturn =5
 tape iteration(s) and do the adjoint(s) equivalent to YOUTURN in Alg. 799 More...
 
integer, parameter, public revolve::rvdone =6
 we are done with adjoining the loop equivalent to the terminate enum value in Alg. 799 More...
 
integer, parameter, public revolve::rverror =7
 an error has occurred equivalent to the error enum value in Alg. 799; see also errorMsgRevolve in rvAction More...
 
integer revolve::ourbundle = 1
 the number of iterations that may be bundled for a taping/adjoining sweep; set by calling rvInit; not supposed to be set/used directly by the user; More...
 
integer revolve::ourtail = 1
 the number of iterations in the last bundle set by calling rvInit; not supposed to be set/used directly by the user; More...
 
integer, dimension(:), allocatable revolve::ourstepof
 vector of step numbers indexed by checkpoint; not to be set/referemced directly by the user More...