Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
DAPartDeriv Class Referenceabstract
Inheritance diagram for DAPartDeriv:
Inheritance graph
[legend]
Collaboration diagram for DAPartDeriv:
Collaboration graph
[legend]

Public Member Functions

 TypeName ("DAPartDeriv")
 Runtime type information. More...
 
 declareRunTimeSelectionTable (autoPtr, DAPartDeriv, dictionary,(const word modelType, const fvMesh &mesh, const DAOption &daOption, const DAModel &daModel, const DAIndex &daIndex, const DAJacCon &daJacCon, const DAResidual &daResidual),(modelType, mesh, daOption, daModel, daIndex, daJacCon, daResidual))
 
 DAPartDeriv (const word modelType, const fvMesh &mesh, const DAOption &daOption, const DAModel &daModel, const DAIndex &daIndex, const DAJacCon &daJacCon, const DAResidual &daResidual)
 
virtual ~DAPartDeriv ()
 
void clear ()
 clear members in parent and child objects More...
 
virtual void initializePartDerivMat (const dictionary &options, Mat jacMat)=0
 initialize partial derivative matrix More...
 
virtual void calcPartDerivMat (const dictionary &options, const Vec xvVec, const Vec wVec, Mat jacMat)=0
 compute the partial derivative matrix More...
 
void setdXvdFFDMat (const Mat dXvdFFDMat)
 setup dXvdFFD matrix More...
 
void setNormStatePerturbVec (Vec *normStatePerturbVec)
 setup the state normalization vector More...
 

Static Public Member Functions

static autoPtr< DAPartDerivNew (const word modelType, const fvMesh &mesh, const DAOption &daOption, const DAModel &daModel, const DAIndex &daIndex, const DAJacCon &daJacCon, const DAResidual &daResidual)
 

Protected Member Functions

void perturbStates (const Vec jacConColors, const Vec normStatePerturbVec, const label colorI, const scalar delta, Vec wVec)
 perturb state variables given a color index More...
 
void perturbBC (const dictionary options, const scalar delta)
 perturb the values in the boundary condition More...
 
void setPartDerivMat (const Vec resVec, const Vec coloredColumn, const label transposed, Mat jacMat, const scalar jacLowerBound=1e-30) const
 set values for the partial derivative matrix More...
 
void perturbAOA (const dictionary options, const scalar delta)
 perturb the angle of attack More...
 

Protected Attributes

const word modelType_
 the name of the jacCon matrix More...
 
const fvMesh & mesh_
 fvMesh More...
 
const DAOptiondaOption_
 DAOption object. More...
 
const DAModeldaModel_
 DAModel object. More...
 
const DAIndexdaIndex_
 DAIndex object. More...
 
const DAJacCondaJacCon_
 DAJacCon object. More...
 
const DAResidualdaResidual_
 DAResidual object. More...
 
const dictionary & allOptions_
 all the DAFoam option More...
 
HashTable< wordList > stateInfo_
 the stateInfo_ list from DAStateInfo object More...
 
Mat dXvdFFDMat_
 volume mesh coordinates wrt the ffd point coordinate partials More...
 

Detailed Description

Definition at line 36 of file DAPartDeriv.H.

Constructor & Destructor Documentation

◆ DAPartDeriv()

DAPartDeriv ( const word  modelType,
const fvMesh &  mesh,
const DAOption daOption,
const DAModel daModel,
const DAIndex daIndex,
const DAJacCon daJacCon,
const DAResidual daResidual 
)

Definition at line 22 of file DAPartDeriv.C.

References daModel(), daOption(), mesh, DAStateInfo::New(), solverName, and DAPartDeriv::stateInfo_.

Here is the call graph for this function:

◆ ~DAPartDeriv()

virtual ~DAPartDeriv ( )
inlinevirtual

Definition at line 152 of file DAPartDeriv.H.

Member Function Documentation

◆ perturbStates()

void perturbStates ( const Vec  jacConColors,
const Vec  normStatePerturbVec,
const label  colorI,
const scalar  delta,
Vec  wVec 
)
protected

perturb state variables given a color index

Definition at line 98 of file DAPartDeriv.C.

References assignValueCheckAD.

Referenced by DAPartDerivdRdW::calcPartDerivMat(), and DAPartDerivdFdW::calcPartDerivMat().

Here is the caller graph for this function:

◆ perturbBC()

void perturbBC ( const dictionary  options,
const scalar  delta 
)
protected

perturb the values in the boundary condition

Definition at line 266 of file DAPartDeriv.C.

References forAll(), and DAPartDeriv::mesh_.

Referenced by DAPartDerivdRdBC::calcPartDerivMat(), and DAPartDerivdFdBC::calcPartDerivMat().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setPartDerivMat()

void setPartDerivMat ( const Vec  resVec,
const Vec  coloredColumn,
const label  transposed,
Mat  jacMat,
const scalar  jacLowerBound = 1e-30 
) const
protected

set values for the partial derivative matrix

Definition at line 165 of file DAPartDeriv.C.

Referenced by DAPartDerivdRdW::calcPartDerivMat(), and DAPartDerivdFdW::calcPartDerivMat().

Here is the caller graph for this function:

◆ perturbAOA()

void perturbAOA ( const dictionary  options,
const scalar  delta 
)
protected

perturb the angle of attack

Definition at line 375 of file DAPartDeriv.C.

References forAll(), and DAPartDeriv::mesh_.

Referenced by DAPartDerivdRdAOA::calcPartDerivMat(), and DAPartDerivdFdAOA::calcPartDerivMat().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ TypeName()

TypeName ( "DAPartDeriv"  )

Runtime type information.

◆ declareRunTimeSelectionTable()

declareRunTimeSelectionTable ( autoPtr  ,
DAPartDeriv  ,
dictionary  ,
(const word modelType, const fvMesh &mesh, const DAOption &daOption, const DAModel &daModel, const DAIndex &daIndex, const DAJacCon &daJacCon, const DAResidual &daResidual)  ,
(modelType, mesh, daOption, daModel, daIndex, daJacCon, daResidual)   
)

◆ New()

autoPtr< DAPartDeriv > New ( const word  modelType,
const fvMesh &  mesh,
const DAOption daOption,
const DAModel daModel,
const DAIndex daIndex,
const DAJacCon daJacCon,
const DAResidual daResidual 
)
static

Definition at line 47 of file DAPartDeriv.C.

References daIndex(), daModel(), daOption(), and mesh.

Referenced by DASolver::calcdFdACT(), DASolver::calcdFdAOA(), DASolver::calcdFdBC(), DASolver::calcdFdFFD(), DASolver::calcdFdW(), DASolver::calcdRdACT(), DASolver::calcdRdAOA(), DASolver::calcdRdBC(), DASolver::calcdRdFFD(), and DASolver::calcdRdWT().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ clear()

void clear ( )
inline

clear members in parent and child objects

Definition at line 159 of file DAPartDeriv.H.

References DAPartDeriv::dXvdFFDMat_.

◆ initializePartDerivMat()

virtual void initializePartDerivMat ( const dictionary &  options,
Mat  jacMat 
)
pure virtual

◆ calcPartDerivMat()

virtual void calcPartDerivMat ( const dictionary &  options,
const Vec  xvVec,
const Vec  wVec,
Mat  jacMat 
)
pure virtual

◆ setdXvdFFDMat()

void setdXvdFFDMat ( const Mat  dXvdFFDMat)

setup dXvdFFD matrix

Definition at line 498 of file DAPartDeriv.C.

References DAPartDeriv::dXvdFFDMat_.

Referenced by PYDAFOAM::solveAdjoint().

Here is the caller graph for this function:

◆ setNormStatePerturbVec()

void setNormStatePerturbVec ( Vec *  normStatePerturbVec)

Member Data Documentation

◆ modelType_

const word modelType_
protected

◆ mesh_

const fvMesh& mesh_
protected

◆ daOption_

const DAOption& daOption_
protected

◆ daModel_

const DAModel& daModel_
protected

◆ daIndex_

const DAIndex& daIndex_
protected

◆ daJacCon_

const DAJacCon& daJacCon_
protected

◆ daResidual_

const DAResidual& daResidual_
protected

◆ allOptions_

const dictionary& allOptions_
protected

all the DAFoam option

Definition at line 69 of file DAPartDeriv.H.

Referenced by DAPartDeriv::setNormStatePerturbVec().

◆ stateInfo_

HashTable<wordList> stateInfo_
protected

the stateInfo_ list from DAStateInfo object

Definition at line 72 of file DAPartDeriv.H.

Referenced by DAPartDeriv::DAPartDeriv(), and DAPartDeriv::setNormStatePerturbVec().

◆ dXvdFFDMat_

Mat dXvdFFDMat_
protected

volume mesh coordinates wrt the ffd point coordinate partials

Definition at line 101 of file DAPartDeriv.H.

Referenced by DAPartDerivdFdFFD::calcPartDerivMat(), DAPartDerivdRdFFD::calcPartDerivMat(), DAPartDeriv::clear(), and DAPartDeriv::setdXvdFFDMat().


The documentation for this class was generated from the following files: