#include "petscmat.h"#include "omg.h"#include "oda.h"#include "odaUtils.h"#include "elasticityJac.h"Go to the source code of this file.
Definition in file elasticityJac.C.
|
|
Definition at line 321 of file elasticityJac.C. Referenced by ComputeElasticityMat(). |
|
|
Definition at line 241 of file elasticityJac.C. |
|
|
Value: {\
unsigned int idx = da->curr();\
unsigned int lev = da->getLevel(idx);\
double h = hFac*(1u << (maxD - lev));\
double fac = h/2.0;\
unsigned int indices[8];\
da->getNodeIndices(indices);\
unsigned char childNum = da->getChildNumber();\
unsigned char hnMask = da->getHangingNodeIndex(idx);\
unsigned char elemType = 0;\
GET_ETYPE_BLOCK(elemType,hnMask,childNum)\
for(int k = 0;k < 8;k++) {\
/*Insert values for Dirichlet Node Rows only.*/\
if(bdyArr[indices[k]]) {\
for(int dof = 0; dof < 3; dof++) {\
ot::MatRecord currRec;\
currRec.rowIdx = indices[k];\
currRec.colIdx = indices[k];\
currRec.rowDim = dof;\
currRec.colDim = dof;\
currRec.val = 1.0;\
records.push_back(currRec);\
} /*end for dof*/\
}\
} /*end for k*/\
if(records.size() > 1000) {\
/*records will be cleared inside the function*/\
da->setValuesInMatrix(B, records, 3, INSERT_VALUES);\
}\
}
Definition at line 290 of file elasticityJac.C. |
|
|
Value: {\
ot::DA* da = damg->da;\
ElasticityData* data = (static_cast<ElasticityData*>(damg->user));\
iC(VecZeroEntries(diag));\
PetscScalar *diagArr = NULL;\
unsigned char* bdyArr = data->bdyArr;\
double mu = data->mu;\
double lambda = data->lambda;\
unsigned int maxD;\
double hFac;\
/*Nodal,Non-Ghosted,Write,3 dof*/\
da->vecGetBuffer(diag,diagArr,false,false,false,3);\
if(da->iAmActive()) {\
maxD = (da->getMaxDepth());\
hFac = 1.0/((double)(1u << (maxD-1)));\
/*Loop through All Elements including ghosted*/\
for(da->init<ot::DA_FLAGS::ALL>();\
da->curr() < da->end<ot::DA_FLAGS::ALL>();\
da->next<ot::DA_FLAGS::ALL>()) {\
ELASTICITY_ELEM_DIAG_BLOCK \
} /*end i*/\
} /*end if active*/\
da->vecRestoreBuffer(diag,diagArr,false,false,false,3);\
/*2 IOP = 1 FLOP. Loop counters are included too.*/\
PetscLogFlops(235*(da->getGhostedElementSize()));\
}
Definition at line 75 of file elasticityJac.C. Referenced by ElasticityMatGetDiagonal(). |
|
|
Value: {\
unsigned int idx = da->curr();\
unsigned int lev = da->getLevel(idx);\
double h = hFac*(1u << (maxD - lev));\
double fac = h/2.0;\
unsigned int indices[8];\
da->getNodeIndices(indices);\
unsigned char childNum = da->getChildNumber();\
unsigned char hnMask = da->getHangingNodeIndex(idx);\
unsigned char elemType = 0;\
GET_ETYPE_BLOCK(elemType,hnMask,childNum)\
for(int k = 0; k < 8; k++) {\
if(bdyArr[indices[k]]) {\
/*Dirichlet Node*/\
for(int dof = 0; dof < 3; dof++) {\
diagArr[(3*indices[k])+dof] = 1.0;\
} /*end dof*/\
} else { \
for(int dof = 0; dof < 3; dof++) {\
diagArr[(3*indices[k])+dof] += (fac*(\
(mu*LaplacianType2Stencil[childNum][elemType][k][k])\
+ ((mu+lambda)*GradDivType2Stencil[childNum][elemType][(3*k) + dof][(3*k) + dof])));\
} /*end dof*/\
}\
} /*end k*/\
}
Definition at line 48 of file elasticityJac.C. |
|
|
Definition at line 130 of file elasticityJac.C. |
|
|
Definition at line 168 of file elasticityJac.C. Referenced by ElasticityMatMult(). |
|
||||||||||||||||
|
Definition at line 360 of file elasticityJac.C. References BUILD_FULL_ELASTICITY_BLOCK, ot::DAMG, ElasticityData::Jmat_private, and ot::_p_DAMG::user. Referenced by main(). |
|
||||||||||||
|
||||||||||||
|
|
Definition at line 485 of file elasticityJac.C. References ElasticityData::bdyArr, ot::DAMG, ElasticityData::inTmp, ElasticityData::Jmat_private, ot::_p_DAMG::nlevels, ElasticityData::outTmp, and ot::_p_DAMG::user. Referenced by main(). |
|
|
Definition at line 653 of file elasticityJac.C. Referenced by CreateElasticityMat(). |
|
||||||||||||
|
Definition at line 102 of file elasticityJac.C. References ot::DAMG, ELASTICITY_DIAG_BLOCK, and iC. Referenced by CreateElasticityMat(). |
|
||||||||||||||||
|
Definition at line 212 of file elasticityJac.C. References ot::DAMG, ELASTICITY_MULT_BLOCK, and iC. Referenced by CreateElasticityMat(). |
|
||||||||||||||||
|
Definition at line 510 of file elasticityJac.C. References ot::DAMG, iC, ElasticityData::inTmp, ElasticityData::Jmat_private, and ElasticityData::outTmp. Referenced by CreateElasticityMat(). |
|
||||||||||||||||
|
Definition at line 23 of file elasticityJac.C. References ot::DAMG, ot::DA::getCommActive(), and ot::DA::iAmActive(). |
|
||||||||||||||||
|
Definition at line 771 of file elasticityJac.C. References ot::DAMG, and ot::DA::getNodeSize(). |
|
||||||||||||||||||||
|
Definition at line 35 of file elasticityJac.C. References ot::DAMG, and ElasticityData::Jmat_private. |
|
|
|
Definition at line 71 of file elasticitySolver.C. Referenced by computeInvBlockDiagEntriesForElasticityMat(), and main(). |
|
1.3.9.1