All Packages  Class Hierarchy  This Package  Previous  Next  Index

Class rn.operator.MatrixVectorMul

java.lang.Object
   |
   +----rn.operator.MatrixVectorMul

public class MatrixVectorMul
extends Object
implements hasAdjoint, hasHessian



Variable Index

 o adj
Pointer to the (relative) adjoint of this operator:
this.isFwd == true ---> adj.isFwd == false
this.isFwd == false ---> adj.isFwd == true
 o hess
 o input
domain of the forward operator (and range of the adjoint)
 o isFwd
true/false as the operator is the forward/adjoint
 o output
range of the forward operator (and domain of the forward)

Constructor Index

 o MatrixVectorMul(int, int)
should possibly private
 o MatrixVectorMul(Matrix)
 o MatrixVectorMul(MatrixVectorMul)
copy constructor (deep copy for coeficients; shallow copy for spaces)
 o MatrixVectorMul(RnSpc)
 o MatrixVectorMul(RnSpc, RnSpc)

Method Index

 o addImage(Vector, Vector)
 o adjoint()
 o copy()
 o createAdjoint()
 o createHessian()
 o equals(MatrixVectorMul)
 o getDerivativeAt(Vector)
 o getDomain()
 o getGradientAt(Vector)
 o getHessianAt(Vector)
 o getRange()
 o image(Vector)
 o image(Vector, Vector)
 o residual(Vector, Vector, Vector)
 o setAdjoint(hasAdjoint)
 o setForward(boolean)
 o setInput(Space)
Apply the operator:

Depending on if the operator is the forward or adjoint:
forward: out = A(in)
adjoint: in = A(out)
 o setOutput(Space)

Variables

 o input
 protected Space input
domain of the forward operator (and range of the adjoint)

 o output
 protected Space output
range of the forward operator (and domain of the forward)

 o isFwd
 protected boolean isFwd
true/false as the operator is the forward/adjoint

 o adj
 protected hasAdjoint adj
Pointer to the (relative) adjoint of this operator:
this.isFwd == true ---> adj.isFwd == false
this.isFwd == false ---> adj.isFwd == true

 o hess
 protected BiLinearOperatorAdjoint hess

Constructors

 o MatrixVectorMul
 public MatrixVectorMul(int row,
                        int col)
should possibly private

 o MatrixVectorMul
 public MatrixVectorMul(RnSpc fwdDomain,
                        RnSpc fwdRange)
 o MatrixVectorMul
 public MatrixVectorMul(RnSpc domainAndRange)
 o MatrixVectorMul
 public MatrixVectorMul(Matrix mat)
 o MatrixVectorMul
 public MatrixVectorMul(MatrixVectorMul src)
copy constructor (deep copy for coeficients; shallow copy for spaces)

Methods

 o copy
 public JamObject copy()
 o setInput
 protected void setInput(Space input)
Apply the operator:

Depending on if the operator is the forward or adjoint:
forward: out = A(in)
adjoint: in = A(out)

Parameters:
add - Performs y += Ax instead of y = Ax if true (where {x,y} = {in,out} -- respectively if and only if isFwd == true)
in - Vector in the domain of the forward (altered if isFwd == false)
out - Vector in the range of the forward (altered if isFwd == true)
 o setOutput
 protected void setOutput(Space output)
 o setForward
 protected void setForward(boolean isFwd)
 o setAdjoint
 protected void setAdjoint(hasAdjoint adj)
 o createAdjoint
 protected void createAdjoint()
 o equals
 public boolean equals(MatrixVectorMul slo2)
 o getDomain
 public Space getDomain()
 o getRange
 public Space getRange()
 o image
 public Vector image(Vector d)
 o image
 public void image(Vector d,
                   Vector r)
 o addImage
 public void addImage(Vector d,
                      Vector r)
 o residual
 public void residual(Vector d,
                      Vector b,
                      Vector r)
 o adjoint
 public hasAdjoint adjoint()
 o getGradientAt
 public LinearOperator getGradientAt(Vector x)
 o getDerivativeAt
 public hasAdjoint getDerivativeAt(Vector x)
 o getHessianAt
 public BiLinearOperatorAdjoint getHessianAt(Vector x)
 o createHessian
 protected void createHessian()

All Packages  Class Hierarchy  This Package  Previous  Next  Index