5 #ifndef _BATTERYFIXINTERFACEGHOST_H_
6 #define _BATTERYFIXINTERFACEGHOST_H_
23 template<
class X,
class Diag,
class OffDiag>
39 Field& diffusivityField):
62 cout <<
"BATTERY FIX INTEFACE GHOST" << endl;
64 const int numMeshes =
_meshes.size();
66 for (
int n=0; n<numMeshes; n++)
99 for (
int f=0; f<parentFaces.
getCount(); f++)
101 int c0p = parentFaceCells(f,0);
102 int c1p = parentFaceCells(f,1);
114 parentCellCentroid[c1p] = parentFaceCentroid[f];
118 diffusivityParent[c1p] = diffusivityParent[c0p];
122 varCellParent[c1p] = varCell[c0];
126 for (
int f=0; f<otherFaces.
getCount(); f++)
129 int c0o = otherFaceCells(f,0);
130 int c1o = otherFaceCells(f,1);
143 otherCellCentroid[c1o] = otherFaceCentroid[f];
147 diffusivityOther[c1o] = diffusivityOther[c0o];
150 const int c1 = cellCells(f,0);
151 varCellOther[c1o] = varCell[c1];
160 for (
int n=0; n<numMeshes; n++)
165 const int nCells = cells.
getCount();
169 cout <<
"Mesh: " << n << endl;
170 for (
int c=0; c<nCells; c++)
172 if (((cellCentroid[c])[2] < -3.33)&&((cellCentroid[c])[2] > -3.34))
173 cout << c <<
": " << (cellCentroid[c])[0] <<
" " << (cellCentroid[c])[1] << endl;
bool isDoubleShell() const
CRMatrix< Diag, OffDiag, X > CCMatrix
Field & _diffusivityField
const StorageSite & getParentFaceGroupSite() const
bool isConnectedShell() const
BatteryFixInterfaceGhost(const MeshList &meshes, GeomFields &geomFields, Field &varField, Field &diffusivityField)
int getOtherMeshID() const
const StorageSite & getOtherFaceGroupSite() const
Array< VectorT3 > VectorT3Array
const CRConnectivity & getCellCells() const
const StorageSite & getCells() const
const CRConnectivity & getFaceCells(const StorageSite &site) const
int getParentMeshID() const
NumTypeTraits< X >::T_Scalar T_Scalar
Vector< T_Scalar, 3 > VectorT3
CCMatrix::DiagArray DiagArray
vector< Mesh * > MeshList