------------------------------------------------------------ lines 8-84 of file: include/cppad/core/chkpoint_two/ctor.hpp ------------------------------------------------------------ {xrst_begin chkpoint_two_ctor} {xrst_spell chk } Checkpoint Function Constructor ############################### Syntax ****** | ``chkpoint_two`` < *Base* > *chk_fun* ( *fun* , *name* , | |tab| *internal_bool* , *use_hes_sparsity* , *use_base2ad* , *use_in_parallel* | ) Prototype ********* {xrst_literal // BEGIN_PROTOTYPE // END_PROTOTYPE } Parallel ******** This constructor, and its corresponding destructor, must not be called in :ref:`parallel` mode. The object *chk_fun* should not be destructed for as long as there is an ``ADFun`` < *Base* > object the has *chk_fun* in its recording. Base **** The type *Base* specifies the base type for AD operations. fun *** This specifies the function :math:`g(x)`. Note that *fun* may or may not have been :ref:`optimized` before calling the constructor. This will determine if the internal representation for *g* ( *x* ) is optimized. name **** is the name used for reporting errors using this checkpoint function. internal_bool ************* If true, sparsity calculations are done with sets represented by vectors of boolean values. Otherwise, vectors of sets are used for sparsity patterns. use_hes_sparsity **************** If true, Hessian sparsity patterns can be calculated for ``ADFun`` < *Base* > objects that have uses of *chk_fun* in their recording. This requires some extra memory and extra computation during the constructor. use_base2ad *********** If this is true, *chk_fun* can be used during the recording of ``ADFun`` < *Base* > objects that get converted to ``ADFun< AD<`` *Base* > > objects using :ref:`base2ad-name` . This requires some extra memory and extra computation during the constructor. use_in_parallel *************** If this is true, *chk_fun* can be used :ref:`ta_parallel_setup@in_parallel` . This requires some extra memory for a constant copy of the *fun* information and a separate copy (that changes) for each thread. chk_fun ******* This is a checkpoint function representation of :math:`g(x)` that can be used during the recording of ``AD`` < *Base* > operations. {xrst_end chkpoint_two_ctor}