DiffAssignmentNode

public class DiffAssignmentNode

Object that stores an almost finished differentiated assignment, as returned by ExpressionDifferentiator.adjointDifferentiateAssignedExpression().

Fields

action

protected int action

Assignment action: SET_VARIABLE or INCREMENT_VARIABLE.

diffAssign

protected Tree diffAssign

Alternative to (diffRecv ; diffValue), the complete assignment Tree. It would be good to completely replace (diffRecv ; diffValue) with diffAssign.

diffR

protected TapList<Tree> diffR

Lists of elementary Trees whose diff is read by the assignment.

diffRecv

protected Tree diffRecv

The differentiated variable that receives the assignment. May be null if this DiffAssignmentNode actually stands for an expression only.

diffValue

protected Tree diffValue

The value that is set-to or added-into the receiving differentiated variable.

diffW

protected TapList<Tree> diffW

Lists of elementary Trees whose diff is written by the assignment.

iReplic

protected int iReplic

The replica number that was used to build “diffRecv” from “primRecv”.

mask

protected InstructionMask mask

When there is a vector mask (e.g. in F90) that controls the assignment. Otherwise null.

primR

protected TapList<Tree> primR

Lists of elementary Trees read by the assignment.

primRecv

protected Tree primRecv

The primal variable whose diff is diffRecv.

primW

protected TapList<Tree> primW

Lists of elementary Trees written by the assignment.

type

protected TypeSpec type

The type of the (primal) assigned value

Constructors

DiffAssignmentNode

protected DiffAssignmentNode(Tree diffRecv, int action, Tree diffValue, InstructionMask mask, Tree primRecv, int iReplic, TapList<Tree> primR, TapList<Tree> primW, TapList<Tree> diffR, TapList<Tree> diffW)

Creates a new DiffAssignmentNode that represents an assignment (or incrementation if action==INCREMENT_VARIABLE), to the diff variable described by “diffRecv”, of expression “diffValue”.

DiffAssignmentNode

protected DiffAssignmentNode(Tree diffAssign, int action, InstructionMask mask, Tree primRecv, int iReplic, TapList<Tree> primR, TapList<Tree> primW, TapList<Tree> diffR, TapList<Tree> diffW)

Alternative creation, directly with a complete assignment Tree

Methods

toString

public String toString()