|
|
void | StartRecording () |
| | Start the recording of the operations and involved variables. If called, the computational graph of all operations occuring after the call will be stored, starting with the variables registered with RegisterInput.
|
| |
|
void | StopRecording () |
| | Stops the recording of the operations and variables.
|
| |
| void | RegisterInput (su2double &data) |
| | Registers the variable as an input. I.e. as a leaf of the computational graph. More...
|
| |
| void | RegisterOutput (su2double &data) |
| | Registers the variable as an output. I.e. as the root of the computational graph. More...
|
| |
|
void | ClearAdjoints () |
| | Clears the currently stored adjoints but keeps the computational graph.
|
| |
|
void | ComputeAdjoint () |
| | Computes the adjoints, i.e. the derivatives of the output with respect to the input variables.
|
| |
|
void | Reset () |
| | Reset the tape structure to be ready for a new recording.
|
| |
| void | ResetInput (su2double &data) |
| | Reset the variable (set index to zero). More...
|
| |
| void | SetPreaccIn (const su2double &data) |
| | Sets the scalar input of a preaccumulation section. More...
|
| |
| void | SetPreaccIn (const su2double *data, const int size) |
| | Sets the input variables of a preaccumulation section using a 1D array. More...
|
| |
| void | SetPreaccIn (const su2double *const *data, const int size_x, const int size_y) |
| | Sets the input variables of a preaccumulation section using a 2D array. More...
|
| |
| void | StartPreacc () |
| | Starts a new preaccumulation section and sets the input variables. More...
|
| |
| void | SetPreaccOut (su2double &data) |
| | Sets the scalar output of a preaccumulation section. More...
|
| |
| void | SetPreaccOut (su2double *data, const int size) |
| | Sets the output variables of a preaccumulation section using a 1D array. More...
|
| |
| void | SetPreaccOut (su2double **data, const int size_x, const int size_y) |
| | Sets the input variables of a preaccumulation section using a 2D array. More...
|
| |
|
void | EndPreacc () |
| | Ends a preaccumulation section and computes the local Jacobi matrix of a code section using the variables set with SetLocalInput(), SetLocalOutput() and pushes a statement for each output variable to the AD tape.
|
| |
Contains routines for the reverse mode of AD. In case there is no reverse type configured, they have no effect at all.
Starts a new preaccumulation section and sets the input variables.
The idea of preaccumulation is to store only the Jacobi matrix of a code section during the taping process instead of all operations. This decreases the tape size and reduces runtime.
Input/Output of the section are set with several calls to SetPreaccIn()/SetPreaccOut().
Note: the call of this routine must be followed by a call of EndPreacc() and the end of the code section.