|
IPCC
1.0
|
Class for Geometric shape. More...
#include "GeometricShape.h"

Public Member Functions | |
| CGeometricShape () | |
| ~CGeometricShape () | |
| void | SetOriginCoordination (double x, double y, double z) |
| Building Geometric part. More... | |
| void | SetDirection (double x_axis, double y_axis, double z_axis) |
| Set direciton of shape. More... | |
| void | SetLength (double lx, double ly, double lz) |
| Set length of shape. More... | |
| MATERIAL_INDEX | GetMaterialType () |
| void | SetMaterialType (MATERIAL_INDEX type) |
| Get maetrial typpe of shap. More... | |
| void | SetMaterialType (char *pszType) |
| Set maetrial type of shape. More... | |
| unsigned int | GetShapeForm () |
| void | SetShapeForm (unsigned int form) |
| Get form type of shape. More... | |
| void | SetShapeForm (char *pszForm) |
| Get form type of shape. More... | |
| bool | GetConsideringBoundaryCondition (AXIS_DEFINE direction) |
| void | SetConsideringBoundaryCondition (bool bConsider, AXIS_DEFINE direction) |
| Get bondary condition of shape. More... | |
| bool | FillUnitcell (CCommandFileParser::LPINPUT_CMD_PARAM lpParam) |
| Set bondary condition of shape. More... | |
| void | BuildNeighborInformation () |
| Find neighbor of each atom. More... | |
| bool | IsFrontFace () |
| void | SetFrontFace (bool bFrontFace) |
| Check is this front face side in MPI running enviroment. More... | |
| bool | IsBackendFace () |
| Set front face side mark to shape object. More... | |
| void | SetBackendFace (bool bBackendFace) |
| Check is this back end face side in MPI running enviroment. More... | |
| bool | ConstructMapInfo (LPNEIGHBOR_MAP_INFO lpMapInfo, CCommandFileParser::LPINPUT_CMD_PARAM lpParam) |
| Extract atom information from runtime objects. More... | |
| void | ShiftAtomID (double fShift) |
| Shift atom id in MPI running enviroment. More... | |
| void | PeriodicUnitCellNumbering (bool bXAxis=false) |
| Numbering to periodic unitcell. More... | |
| void | InitMapInfo (LPNEIGHBOR_MAP_INFO lpMapInfo) |
| Intilize map info data. More... | |
| bool | RefillPeriodicBinding (CMatrixOperation::CCSR *pResult, CCommandFileParser::LPINPUT_CMD_PARAM lpParam, LPNEIGHBOR_MAP_INFO lpMapInfo, unsigned int nRepeatIndex, double fKValue[3], unsigned int nBandSize, bool bRecover) |
| Applying phase to Hamiltonian. More... | |
| double | GetTotalAtomCount () |
| void | SetTotalAtomCount (double fTotalAtomCountinMPI) |
| Get total valid atom count in shape. More... | |
| double | GetAtomStartID () |
| Set total valid atom count in shape. More... | |
| void | ExchangeAtomInfoBetweenNode () |
| Get start index of atom in shape, using in MPI running enviroment. More... | |
| void | FinalShape () |
| Finalize Shape variable. More... | |
| std::vector< CGeometricAtom * > * | GetSurfaceAtomList () |
| unsigned int | ConstructBasicGeometric (CCommandFileParser::LPINPUT_CMD_PARAM lpParam, LPNEIGHBOR_MAP_INFO lpMapInfo, bool bMPI) |
| Get Surface atom list. More... | |
| void | SetupPEBoundaryCondition (CCommandFileParser::LPINPUT_CMD_PARAM lpParam, LP_CONTACT_GROUP_INFO *lpContactGroup) |
| <Added by="" jhkang>=""> More... | |
| bool | BuildPEHamiltonian (CCommandFileParser::LPINPUT_CMD_PARAM lpParam, LPNEIGHBOR_MAP_INFO lpMapInfo, CMatrixOperation::CCSR *pCSRResult) |
| Build PE Hamiltonian matrix from mapinfo data. More... | |
| void | BuildPEBiasVector (CCommandFileParser::LPINPUT_CMD_PARAM lpParam, LPNEIGHBOR_MAP_INFO lpMapInfo, LP_CONTACT_GROUP_INFO *lpContactGroup, CMatrixOperation::CVector *pVecResult) |
| void | BuildPEWaveVector (CCommandFileParser::LPINPUT_CMD_PARAM lpParam, LPNEIGHBOR_MAP_INFO lpMapInfo, CMatrixOperation::CVector *pVecResult) |
| int | IsCoordinateMatched (double fa, double fb) |
| void | MapElecAtomOnPoissonGrid (CCommandFileParser::LPINPUT_CMD_PARAM lpParam, LPNEIGHBOR_MAP_INFO lpMapInfo) |
| void | ConstructContactRegionOnPoissonGrid (CCommandFileParser::LPINPUT_CMD_PARAM lpParam, LPNEIGHBOR_MAP_INFO lpMapInfo, LP_CONTACT_GROUP_INFO *lpContactGroup) |
| bool | GetNeumannBoundaryCondition (AXIS_DEFINE direction) |
| void | SetNeumannBoundaryCondition (bool bConsider, AXIS_DEFINE direction) |
| Get Neumann boundary condition of shape. More... | |
| double * | GetUnitCellLength () |
| void | SetShapeInformation (CCommandFileParser::LPINPUT_CMD_PARAM lpParam) |
| Set shape information(Length, material, bondary condition and so on) More... | |
| void | SetMatchingUnitcellCount (int nCount) |
Static Public Member Functions | |
| static bool | SetAtomAndNeighborInformation (CCommandFileParser::LPINPUT_CMD_PARAM lpParam) |
| Set neighbor information to AtomFactory. More... | |
| static void | FreeMapInfo (LPNEIGHBOR_MAP_INFO lpMapInfo) |
| Release mapinfo data. More... | |
Public Attributes | |
| unsigned int | m_nAtomFirstLayer |
| <Added by="" jhkang="" end>=""> More... | |
| unsigned int | m_nAtomLastLayer |
| Last layer information for sending to next node. More... | |
Static Public Attributes | |
| static CGeometricUnitCellInfo_zincblende | m_UnitCellInfo_zincblende |
| static CGeometricUnitCellInfo_cubic | m_UnitCellInfo_cubic |
| static IGeometricUnitCellInfo * | m_pUnitCellInfo |
| Unitcell information pointer for using in class internal. More... | |
| static CMatrixOperation::CDMatrix | m_rotationMatrix |
| Rotation matrix for given direction. More... | |
Private Member Functions | |
| bool | IsInBoundaryCondition (int x, int y, int z, int maxX, int maxY, int maxZ) |
| <Added by="" jhkang="" end>=""> More... | |
| void | FreeUnitCellList () |
| Relase unitcell list. More... | |
| void | InitShape () |
| Initialize Shape variable. More... | |
| void | RotateMatrix (CMatrixOperation::CDMatrix *pMatrixNbr, CMatrixOperation::CDMatrix *pMatrixResult, double fDegree[2]) |
| Rotate matrix with calculated degree. More... | |
| CGeometricAtom * | GetAtomByIndex (double fID) |
| Get atom instance by ID. More... | |
| double | GetKPhaseSign (double fAtomPos, double fPeriodicAtomPos) |
| Calculating Phase sign. More... | |
| int | GetPeriodicDirection (int x, int y, int z, int maxX, int maxY, int maxZ) |
| Get periodic direction information. More... | |
| bool | CalculateUnitcellCount () |
| Calculating unitcell count in shape. More... | |
| void | ArrangeUnitCell (CCommandFileParser::LPINPUT_CMD_PARAM lpParam) |
| Arranging unitcell into shape. More... | |
| void | CheckingNeighborCandiate () |
| Checking neighbor unitcell by calculating index. More... | |
| double * | Serialize (double fXLayer) |
| Serialize unitcells with specific later index to double array. More... | |
| void | Deserialize (std::vector< CGeometricUnitCell > *pVectUnitCell, double *pBuffer, bool bFrontSide) |
| Deerialize unitcells from double array. More... | |
| void | BuildGeoFileName (char *pszFileName, CCommandFileParser::LPINPUT_CMD_PARAM lpParam) |
| Make atom map naming. More... | |
| bool | SetMapInfoSize (LPNEIGHBOR_MAP_INFO lpMapInfo, double fSize) |
| Building Hamiltonian part. More... | |
Static Private Member Functions | |
| static void | BuildRotationMatrix (double fDegree[2]) |
| Build rotation matrix for given direction. More... | |
| static void | CalculateDegree (CCommandFileParser::LPINPUT_CMD_PARAM lpParam) |
| Calculating degree from direction information. More... | |
Private Attributes | |
| double | m_fLength [3] |
| Building Geometric part. More... | |
| double | m_fAssignedCount [3] |
| Unitcell assigend count in shape for each direction. More... | |
| unsigned int | m_ShapeForm |
| Shape form. More... | |
| bool | m_bConsiderBoundaryCondition [3] |
| Bondary condition for each driection. More... | |
| bool | m_bFrontFace |
| Flag of front face or not. More... | |
| bool | m_bBackendFace |
| Flag of back end face or not. More... | |
| double | m_fTotalAtomCountinMPI |
| Total valid atom count in shape. More... | |
| double | m_fAtomIDStartIndex |
| Start atom index in current Shape. More... | |
| MATERIAL_INDEX | m_MaterialType |
| Material type of shape. More... | |
| std::vector< CGeometricUnitCell > | m_vectUnitCell |
| Array of unitcell in shape. More... | |
| std::vector< CGeometricUnitCell > | m_vectPrevUnitCell |
| Front edge unit cell that copy from previous side node. More... | |
| std::vector< CGeometricUnitCell > | m_vectNextUnitCell |
| Back end edge unit cell that copy from next side node. More... | |
| std::vector< CGeometricAtom * > | m_vectSurfaceAtom |
| CGeometricCoordination | m_originCoordination |
| Orign coordination of shape. More... | |
| CGeometricDirection | m_shapDirection |
| int | m_nContactNumber |
| <Added by="" jhkang>=""> More... | |
| std::vector< double > | m_waveFunctionValue |
| bool | m_bNeumannBoundaryCondition [3] |
| int | m_nHandlingUnitcellCount |
| double | m_fUnitCellLength [3] |
| CGeometricShape::CGeometricShape | ( | ) |
Definition at line 32 of file GeometricShape.cpp.
References InitShape().

| CGeometricShape::~CGeometricShape | ( | ) |
Definition at line 37 of file GeometricShape.cpp.
References FinalShape().

|
private |
Arranging unitcell into shape.
| lpParam | Input parameters parsing from command file |
Definition at line 403 of file GeometricShape.cpp.
References _X, _Y, _Z, CGeometricUnitCell::ArrangeAtom(), CGeometricCoordination::GetCoordination(), CGeometricCoordination::GetCoordinationAll(), CMPIManager::GetCurrentRank(), CGeometricUnitCell::GetLength(), GetPeriodicDirection(), CMPIManager::GetTotalNodeCount(), IsInBoundaryCondition(), m_bConsiderBoundaryCondition, m_bFrontFace, m_fAssignedCount, m_fLength, m_nAtomFirstLayer, m_nAtomLastLayer, m_originCoordination, m_vectNextUnitCell, m_vectPrevUnitCell, m_vectUnitCell, CGeometricAtom::NONE, CCommandFileParser::INPUT_CMD_PARAM::nShape, CGeometricUnitCell::NumberingSubElement(), CGeometricUnitCell::ResetSubElementID(), CGeometricUnitCell::SetAssignIndex(), CGeometricCoordination::SetCoordination(), CGeometricUnitCell::SetCoordination(), CGeometricUnitCell::SetID(), CGeometricCoordination::SetOffset(), CGeometricUnitCell::SetPeriodic(), CGeometricUnitCell::SetSubDomainMaterial(), CGeometricUnitCell::SetUnitcellList(), and CCommandFileParser::INPUT_CMD_PARAM::szDomainMat.
Referenced by FillUnitcell().


|
private |
Make atom map naming.
| [out] | pszFileName | Geometric information file name |
| lpParam | Input parameter parsing from command file |
Definition at line 1343 of file GeometricShape.cpp.
References CCommandFileParser::INPUT_CMD_PARAM::bConsiderBoundaryCondition, CCommandFileParser::INPUT_CMD_PARAM::nDirectionSingle, CCommandFileParser::INPUT_CMD_PARAM::nSubDomainNumber, CCommandFileParser::INPUT_CMD_PARAM::szShape, and CCommandFileParser::INPUT_CMD_PARAM::szStructureType.
Referenced by ConstructMapInfo().

| void CGeometricShape::BuildNeighborInformation | ( | ) |
Find neighbor of each atom.
Definition at line 116 of file GeometricShape.cpp.
References GetSurfaceAtomList(), m_fAssignedCount, and m_vectUnitCell.
Referenced by ConstructBasicGeometric(), and CTBMS_Solver::Launching_TBMS_Solver().


| void CGeometricShape::BuildPEBiasVector | ( | CCommandFileParser::LPINPUT_CMD_PARAM | lpParam, |
| LPNEIGHBOR_MAP_INFO | lpMapInfo, | ||
| LP_CONTACT_GROUP_INFO * | lpContactGroup, | ||
| CMatrixOperation::CVector * | pVecResult | ||
| ) |
Definition at line 2187 of file GeometricShape.cpp.
References ATOM_DEFAULT_INDEX, CCommandFileParser::INPUT_CMD_PARAM::bSaveContactBiasVector, CMaterialParam::BuildMaterialParam(), CONTACT_GROUP_INFO::ContactList, EPSILON0, CONTACT_GROUP_INFO::fContactBiasValue, GEO_PARAMETER::feips, NEIGHBOR_MAP_INFO::fItemCount, CCommandFileParser::INPUT_CMD_PARAM::fUnitcellLength, CMatrixOperation::CVector::GetAt(), CMPIManager::GetCurrentRank(), CGeometricAtomFactory::GetMaterialNumber(), CComplex::GetRealNumber(), CMPIManager::GetTotalNodeCount(), CMPIManager::IsRootRank(), m_nContactNumber, CONTACT_GROUP_INFO::nContactDirection, NM, NMAXDOMAIN, NEIGHBOR_MAP_INFO::pfID, NEIGHBOR_MAP_INFO::pfNeighbor, NEIGHBOR_MAP_INFO::pfX_Coordination, NEIGHBOR_MAP_INFO::pfY_Coordination, NEIGHBOR_MAP_INFO::pfZ_Coordination, NEIGHBOR_MAP_INFO::pMaterialNumber, CMPIManager::ReceiveDoubleBufferSync(), CMPIManager::SendDoubleBufferSync(), CMatrixOperation::CVector::SetAt(), CMatrixOperation::CVector::SetSize(), CUtility::ShowMsg(), and CCommandFileParser::INPUT_CMD_PARAM::szDomainMat.
Referenced by CSPLoop::ConstructionGeometric().


| bool CGeometricShape::BuildPEHamiltonian | ( | CCommandFileParser::LPINPUT_CMD_PARAM | lpParam, |
| LPNEIGHBOR_MAP_INFO | lpMapInfo, | ||
| CMatrixOperation::CCSR * | pCSRResult | ||
| ) |
Build PE Hamiltonian matrix from mapinfo data.
Definition at line 1480 of file GeometricShape.cpp.
References _X, _Y, _Z, ATOM_CONTACT_INDEX, ATOM_DEFAULT_INDEX, CCommandFileParser::INPUT_CMD_PARAM::bConsiderNeumannBoundaryCondition, CMaterialParam::BuildMaterialParam(), CMatrixOperation::CDMatrix::BuildMatrixFirst(), EPSILON0, GEO_PARAMETER::feips, CCommandFileParser::INPUT_CMD_PARAM::fUnitcellLength, CMPIManager::GetCurrentRank(), CGeometricAtomFactory::GetMaterialNumber(), CMatrixOperation::CCSR::GetRowCount(), CMPIManager::IsRootRank(), m_fAtomIDStartIndex, CMatrixOperation::FILL_MATRIX_DATA::nColumnIndex, NM, NMAXDOMAIN, NEIGHBOR_MAP_INFO::pfNeighbor, NEIGHBOR_MAP_INFO::pMaterialNumber, CMatrixOperation::FILL_MATRIX_DATA::pMatrix, NEIGHBOR_MAP_INFO::pNeighborMaterial, CMatrixOperation::CCSR::PushMatrixConcurrentPE(), CMatrixOperation::CDMatrix::SetElement(), and CCommandFileParser::INPUT_CMD_PARAM::szDomainMat.
Referenced by CSPLoop::BuildHamiltonian().


| void CGeometricShape::BuildPEWaveVector | ( | CCommandFileParser::LPINPUT_CMD_PARAM | lpParam, |
| LPNEIGHBOR_MAP_INFO | lpMapInfo, | ||
| CMatrixOperation::CVector * | pVecResult | ||
| ) |
Definition at line 1751 of file GeometricShape.cpp.
References _X, _Y, _Z, ATOM_DEFAULT_INDEX, CCommandFileParser::INPUT_CMD_PARAM::bSaveWaveVector, NEIGHBOR_MAP_INFO::fItemCount, CCommandFileParser::INPUT_CMD_PARAM::fUnitcellLength, CMatrixOperation::CVector::GetAt(), CMPIManager::GetCurrentRank(), CComplex::GetRealNumber(), CMPIManager::GetTotalNodeCount(), CMPIManager::IsRootRank(), m_waveFunctionValue, NM, NEIGHBOR_MAP_INFO::pfAtomOnGrid, NEIGHBOR_MAP_INFO::pfID, NEIGHBOR_MAP_INFO::pfX_Coordination, NEIGHBOR_MAP_INFO::pfY_Coordination, NEIGHBOR_MAP_INFO::pfZ_Coordination, Qo, CMPIManager::ReceiveDoubleBufferSync(), CMPIManager::SendDoubleBufferSync(), CMatrixOperation::CVector::SetAt(), CMatrixOperation::CVector::SetSize(), and CUtility::ShowMsg().

|
staticprivate |
Build rotation matrix for given direction.
| fDegree | Given degree of theta and phi |
Definition at line 1320 of file GeometricShape.cpp.
References CMatrixOperation::CDMatrix::BuildMatrixFirst(), m_rotationMatrix, PHI_DEGREE, CMatrixOperation::CDMatrix::SetElement(), THETA_DEGREE, and CMatrixOperation::CDMatrix::TrnasPos().
Referenced by SetAtomAndNeighborInformation().


|
staticprivate |
Calculating degree from direction information.
| lpParam | Input parameters parsing from command file |
Definition at line 715 of file GeometricShape.cpp.
References CCommandFileParser::INPUT_CMD_PARAM::fDegree, CCommandFileParser::INPUT_CMD_PARAM::fDirection, PHI_DEGREE, PI_VALUE, and THETA_DEGREE.
Referenced by SetAtomAndNeighborInformation().

|
private |
Calculating unitcell count in shape.
< Only for Show unitcell count
< Only for Show unitcell count
Definition at line 257 of file GeometricShape.cpp.
References _X, _Y, _Z, CMPIManager::AllReduceDouble(), CGeometricCoordination::GetCoordination(), CMPIManager::GetCurrentRank(), CGeometricUnitCell::GetLength(), CMPIManager::GetTotalNodeCount(), CMPIManager::IsRootRank(), m_bBackendFace, m_bConsiderBoundaryCondition, m_bFrontFace, m_fAssignedCount, m_fLength, m_fUnitCellLength, m_nHandlingUnitcellCount, m_originCoordination, CGeometricCoordination::SetOffset(), and CUtility::ShowMsg().
Referenced by FillUnitcell().


|
private |
Checking neighbor unitcell by calculating index.
Definition at line 754 of file GeometricShape.cpp.
References m_bBackendFace, m_bFrontFace, m_fAssignedCount, and m_vectUnitCell.
Referenced by FillUnitcell().

| unsigned int CGeometricShape::ConstructBasicGeometric | ( | CCommandFileParser::LPINPUT_CMD_PARAM | lpParam, |
| LPNEIGHBOR_MAP_INFO | lpMapInfo, | ||
| bool | bMPI | ||
| ) |
Get Surface atom list.
< Setting shape parameters
< Setting unitcell parameters
< Arranging unitcell
< Numbering unitcell in periodic bonding layer
< Exchanging front and back side layer information between node
< Numbering unitcell in periodic bonding layer for exchanging layer
< Find Neighbor of each atom
< Make mapinfo runtime strcuture and writting into file
Definition at line 1369 of file GeometricShape.cpp.
References BuildNeighborInformation(), CALCULATION_SUCCESS, CAN_NOT_ALLOC_RANK, ConstructMapInfo(), ExchangeAtomInfoBetweenNode(), FillUnitcell(), FREE_MEM, PeriodicUnitCellNumbering(), SetAtomAndNeighborInformation(), SetShapeInformation(), and SHOW_SIMPLE_MSG.
Referenced by CSPLoop::ConstructionGeometric().


| void CGeometricShape::ConstructContactRegionOnPoissonGrid | ( | CCommandFileParser::LPINPUT_CMD_PARAM | lpParam, |
| LPNEIGHBOR_MAP_INFO | lpMapInfo, | ||
| LP_CONTACT_GROUP_INFO * | lpContactGroup | ||
| ) |
Definition at line 1842 of file GeometricShape.cpp.
References _X, _Y, _Z, ATOM_CONTACT_INDEX, ATOM_DEFAULT_INDEX, BOX_CONTACT, BOX_SHAPE, CCommandFileParser::INPUT_CMD_PARAM::bSaveContactBiasVector, CIRCLE_CONTACT, CONTACT_GROUP_INFO::ContactList, CYLINDER_SHAPE, CCommandFileParser::INPUT_CMD_PARAM::fContactBias, CONTACT_GROUP_INFO::fContactBiasValue, CONTACT_GROUP_INFO::fContactLength, CCommandFileParser::INPUT_CMD_PARAM::fContactLength, CONTACT_GROUP_INFO::fContactOrigin, CCommandFileParser::INPUT_CMD_PARAM::fContactOrigin, NEIGHBOR_MAP_INFO::fItemCount, CGeometricCoordination::GetCoordination(), CMPIManager::GetCurrentRank(), CMPIManager::GetTotalNodeCount(), CMPIManager::IsRootRank(), m_bBackendFace, m_bFrontFace, m_fLength, m_nContactNumber, m_originCoordination, m_ShapeForm, CONTACT_GROUP_INFO::nContactDirection, CCommandFileParser::INPUT_CMD_PARAM::nContactNumber, CONTACT_GROUP_INFO::nContactShape, CCommandFileParser::INPUT_CMD_PARAM::nContactShape, NEIGHBOR_MAP_INFO::pfID, NEIGHBOR_MAP_INFO::pfNeighbor, NEIGHBOR_MAP_INFO::pfX_Coordination, NEIGHBOR_MAP_INFO::pfY_Coordination, NEIGHBOR_MAP_INFO::pfZ_Coordination, CMPIManager::ReceiveDoubleBufferSync(), CMPIManager::SendDoubleBufferSync(), CUtility::ShowMsg(), CCommandFileParser::INPUT_CMD_PARAM::szContactMaterial, and CCommandFileParser::INPUT_CMD_PARAM::szContactShape.
Referenced by CSPLoop::ConstructionGeometric().


| bool CGeometricShape::ConstructMapInfo | ( | LPNEIGHBOR_MAP_INFO | lpMapInfo, |
| CCommandFileParser::LPINPUT_CMD_PARAM | lpParam | ||
| ) |
Extract atom information from runtime objects.
| lpMapInfo | Atom map information |
| bFileWrite | Option for save file or not |
Definition at line 769 of file GeometricShape.cpp.
References _X, _Y, _Z, ATOM_DEFAULT_INDEX, CCommandFileParser::INPUT_CMD_PARAM::bSaveMapFile, BuildGeoFileName(), NEIGHBOR_MAP_INFO::fItemCount, FreeMapInfo(), CGeometricCoordination::GetCoordination(), CGeometricAtom::GetCoordination(), CMPIManager::GetCurrentRank(), CGeometricAtom::GetDomainMaterialNumber(), CGeometricAtom::GetDomainNumber(), CGeometricAtom::GetID(), CGeometricAtom::GetMaterialMaterialNumber(), CGeometricAtom::GetMaterialNumber(), CGeometricAtom::GetNeighborAtomID(), CGeometricAtom::GetNeighborCount(), CGeometricUnitCell::GetSubElementID(), CMPIManager::GetTotalNodeCount(), CGeometricAtom::GetType(), InitMapInfo(), CMPIManager::IsDeflationRoot(), CGeometricAtom::IsPeriodicAtom(), CGeometricAtom::IsPeriodicCoupling(), CMPIManager::IsRootRank(), m_vectUnitCell, NEIGHBOR_MAP_INFO::pAtomType, NEIGHBOR_MAP_INFO::pbPeriodicCondition, NEIGHBOR_MAP_INFO::pDomainMaterialNumber, NEIGHBOR_MAP_INFO::pfID, NEIGHBOR_MAP_INFO::pfNeighbor, NEIGHBOR_MAP_INFO::pfX_Coordination, NEIGHBOR_MAP_INFO::pfY_Coordination, NEIGHBOR_MAP_INFO::pfZ_Coordination, NEIGHBOR_MAP_INFO::pMaterialNumber, NEIGHBOR_MAP_INFO::pnDomainNumber, NEIGHBOR_MAP_INFO::pNeighborMaterial, CMPIManager::ReceiveDoubleBufferSync(), CMPIManager::SendDoubleBufferSync(), SetMapInfoSize(), and CUtility::ShowMsg().
Referenced by ConstructBasicGeometric(), and CTBMS_Solver::Launching_TBMS_Solver().


|
private |
Deerialize unitcells from double array.
| [out] | pVectUnitCell | Buffer for saving deserializing result |
| pBuffer | Source data buffer | |
| bFrontSide | Option is fornt side or not |
Definition at line 1293 of file GeometricShape.cpp.
References _Y, _Z, CGeometricUnitCell::Deserialize(), CGeometricAtomFactory::GetAtomCountInUnitcell(), m_fAssignedCount, m_vectUnitCell, CGeometricUnitCell::SetID(), and UNITCELL_WRITING_BLOCK_SIZE.
Referenced by ExchangeAtomInfoBetweenNode().


| void CGeometricShape::ExchangeAtomInfoBetweenNode | ( | ) |
Get start index of atom in shape, using in MPI running enviroment.
Exchange edge information between MPI nodes
< Exchange bondary atom layer to back side
< Exchange bondary atom layer to front side
Definition at line 1148 of file GeometricShape.cpp.
References _X, _Y, _Z, CMPIManager::BroadcastDouble(), Deserialize(), FREE_MEM, CGeometricAtomFactory::GetAtomCountInUnitcell(), CMPIManager::GetCurrentRank(), CGeometricUnitCell::GetSubElementID(), CMPIManager::GetTotalNodeCount(), CMPIManager::IsRootRank(), m_bConsiderBoundaryCondition, m_fAssignedCount, m_fAtomIDStartIndex, m_fTotalAtomCountinMPI, m_vectNextUnitCell, m_vectPrevUnitCell, m_vectUnitCell, CMPIManager::ReceiveDoubleBufferSync(), CMPIManager::SendDoubleBufferSync(), Serialize(), ShiftAtomID(), and UNITCELL_WRITING_BLOCK_SIZE.
Referenced by ConstructBasicGeometric(), and CTBMS_Solver::Launching_TBMS_Solver().


| bool CGeometricShape::FillUnitcell | ( | CCommandFileParser::LPINPUT_CMD_PARAM | lpParam | ) |
Set bondary condition of shape.
Spreading atom into shape
| lpParam | Input parameter parsing from command file |
Definition at line 102 of file GeometricShape.cpp.
References ArrangeUnitCell(), CalculateUnitcellCount(), and CheckingNeighborCandiate().
Referenced by ConstructBasicGeometric(), and CTBMS_Solver::Launching_TBMS_Solver().


| void CGeometricShape::FinalShape | ( | ) |
Finalize Shape variable.
Definition at line 252 of file GeometricShape.cpp.
References FreeUnitCellList().
Referenced by CTBMS_Solver::Launching_TBMS_Solver(), and ~CGeometricShape().


|
static |
Release mapinfo data.
| lpMapInfo | Atom map information |
<Added by="" jhkang>="">
<Added by="" jhkang="" end>="">
Definition at line 1086 of file GeometricShape.cpp.
References FREE_MEM, MAX_NEIGHBOR, NEIGHBOR_MAP_INFO::pAtomType, NEIGHBOR_MAP_INFO::pbPeriodicCondition, NEIGHBOR_MAP_INFO::pDomainMaterialNumber, NEIGHBOR_MAP_INFO::pfAtomOnGrid, NEIGHBOR_MAP_INFO::pfID, NEIGHBOR_MAP_INFO::pfNeighbor, NEIGHBOR_MAP_INFO::pfX_Coordination, NEIGHBOR_MAP_INFO::pfY_Coordination, NEIGHBOR_MAP_INFO::pfZ_Coordination, NEIGHBOR_MAP_INFO::pMaterialNumber, NEIGHBOR_MAP_INFO::pnDomainNumber, and NEIGHBOR_MAP_INFO::pNeighborMaterial.
Referenced by ConstructMapInfo(), CTBMS_Solver::FinalEvn(), and CSPLoop::Finalize().

|
private |
Relase unitcell list.
Definition at line 219 of file GeometricShape.cpp.
References m_vectNextUnitCell, m_vectPrevUnitCell, m_vectSurfaceAtom, and m_vectUnitCell.
Referenced by FinalShape().

|
private |
Get atom instance by ID.
| fID | Atom ID |
Definition at line 696 of file GeometricShape.cpp.
References CGeometricAtom::IsPeriodicAtom(), and m_vectUnitCell.
Referenced by RefillPeriodicBinding().


|
inline |
Set total valid atom count in shape.
Definition at line 57 of file GeometricShape.h.
References m_fAtomIDStartIndex.
Referenced by CTBMS_Solver::AllocateCSR(), CSPLoop::AllocateCSR(), CSPLoop::BuildHamiltonian(), and CTBMS_Solver::Launching_TBMS_Solver().

|
inline |
Definition at line 42 of file GeometricShape.h.
References m_bConsiderBoundaryCondition.
|
private |
Calculating Phase sign.
| fAtomPos | Atom coordination |
| fPeriodicAtomPos | Periodic atom coordination |
Definition at line 682 of file GeometricShape.cpp.
Referenced by RefillPeriodicBinding().

|
inline |
Definition at line 36 of file GeometricShape.h.
References m_MaterialType.
|
inline |
Definition at line 70 of file GeometricShape.h.
References m_bNeumannBoundaryCondition.
|
private |
Get periodic direction information.
| x | x direction unitcell index |
| y | y direction unitcall index |
| z | z direction unitcell index |
| maxX | x direction max index of unitcell |
| maxY | y direction max index of unitcell |
| maxZ | z direction max index of unitcell |
Definition at line 135 of file GeometricShape.cpp.
References _X, _Y, _Z, CMPIManager::GetCurrentRank(), CMPIManager::GetTotalNodeCount(), CMPIManager::IsRootRank(), m_bConsiderBoundaryCondition, CGeometricAtom::NONE, CGeometricAtom::X_DIRECTION, CGeometricAtom::Y_DIRECTION, and CGeometricAtom::Z_DIRECTION.
Referenced by ArrangeUnitCell().


|
inline |
|
inline |
Definition at line 60 of file GeometricShape.h.
References m_vectSurfaceAtom.
Referenced by BuildNeighborInformation(), CSPLoop::ConstructionGeometric(), and CTBMS_Solver::Launching_TBMS_Solver().

|
inline |
Definition at line 55 of file GeometricShape.h.
References m_fTotalAtomCountinMPI.
Referenced by CTBMS_Solver::AllocateCSR(), and CSPLoop::AllocateCSR().

|
inline |
Definition at line 77 of file GeometricShape.h.
Referenced by CSPLoop::executeSPLoop().

| void CGeometricShape::InitMapInfo | ( | LPNEIGHBOR_MAP_INFO | lpMapInfo | ) |
Intilize map info data.
| lpMapInfo | Atom map information |
<Added by="" jhkang>="">
<Added by="" jhkang="" end>="">
Definition at line 1114 of file GeometricShape.cpp.
References NEIGHBOR_MAP_INFO::fItemCount, MAX_NEIGHBOR, NEIGHBOR_MAP_INFO::pAtomType, NEIGHBOR_MAP_INFO::pbPeriodicCondition, NEIGHBOR_MAP_INFO::pfAtomOnGrid, NEIGHBOR_MAP_INFO::pfID, NEIGHBOR_MAP_INFO::pfNeighbor, NEIGHBOR_MAP_INFO::pfX_Coordination, NEIGHBOR_MAP_INFO::pfY_Coordination, NEIGHBOR_MAP_INFO::pfZ_Coordination, and NEIGHBOR_MAP_INFO::pNeighborMaterial.
Referenced by ConstructMapInfo().

|
private |
Initialize Shape variable.
Definition at line 227 of file GeometricShape.cpp.
References _X, _Y, _Z, BOX_SHAPE, m_bBackendFace, m_bConsiderBoundaryCondition, m_bFrontFace, m_fAtomIDStartIndex, m_fLength, m_fTotalAtomCountinMPI, m_fUnitCellLength, m_MaterialType, m_nAtomFirstLayer, m_nAtomLastLayer, m_nHandlingUnitcellCount, m_originCoordination, m_pUnitCellInfo, m_shapDirection, m_ShapeForm, CGeometricCoordination::SetCoordination(), CGeometricDirection::SetDirection(), and Si.
Referenced by CGeometricShape().


|
inline |
Set front face side mark to shape object.
Definition at line 48 of file GeometricShape.h.
References m_bBackendFace.
| int CGeometricShape::IsCoordinateMatched | ( | double | fa, |
| double | fb | ||
| ) |
Definition at line 1602 of file GeometricShape.cpp.
Referenced by MapElecAtomOnPoissonGrid().

|
inline |
Definition at line 46 of file GeometricShape.h.
References m_bFrontFace.
|
private |
<Added by="" jhkang="" end>="">
Check unitcell is in the bondary area or not
| x | x direction unitcell index |
| y | y direction unitcall index |
| z | z direction unitcell index |
| maxX | x direction max index of unitcell |
| maxY | y direction max index of unitcell |
| maxZ | z direction max index of unitcell |
Definition at line 179 of file GeometricShape.cpp.
References _X, _Y, _Z, CMPIManager::GetCurrentRank(), CMPIManager::GetTotalNodeCount(), CMPIManager::IsRootRank(), and m_bConsiderBoundaryCondition.
Referenced by ArrangeUnitCell().


| void CGeometricShape::MapElecAtomOnPoissonGrid | ( | CCommandFileParser::LPINPUT_CMD_PARAM | lpParam, |
| LPNEIGHBOR_MAP_INFO | lpMapInfo | ||
| ) |
Definition at line 1611 of file GeometricShape.cpp.
References _X, ATOM_DEFAULT_INDEX, CCommandFileParser::INPUT_CMD_PARAM::bSaveContactBiasVector, CCommandFileParser::INPUT_CMD_PARAM::bSaveWaveVector, NEIGHBOR_MAP_INFO::fItemCount, CGeometricCoordination::GetCoordination(), CMPIManager::GetCurrentRank(), CMPIManager::GetTotalNodeCount(), IGeometricUnitCellInfo::GetUnitcCellSize(), IsCoordinateMatched(), CMPIManager::IsRootRank(), m_fLength, m_originCoordination, m_pUnitCellInfo, NEIGHBOR_MAP_INFO::pfAtomOnGrid, NEIGHBOR_MAP_INFO::pfID, NEIGHBOR_MAP_INFO::pfX_Coordination, NEIGHBOR_MAP_INFO::pfY_Coordination, NEIGHBOR_MAP_INFO::pfZ_Coordination, CMPIManager::ReceiveDoubleBufferSync(), CMPIManager::SendDoubleBufferSync(), and CUtility::ShowMsg().

| void CGeometricShape::PeriodicUnitCellNumbering | ( | bool | bXAxis = false | ) |
Numbering to periodic unitcell.
| bXAxis | Do operation to x axis or not |
Definition at line 508 of file GeometricShape.cpp.
References _X, _Y, _Z, CGeometricUnitCell::CalculatingIndex(), FIND_TARGET_INDEX, CMPIManager::GetCurrentRank(), CMPIManager::GetTotalNodeCount(), CMPIManager::IsRootRank(), m_bConsiderBoundaryCondition, m_fAssignedCount, m_vectNextUnitCell, m_vectPrevUnitCell, and m_vectUnitCell.
Referenced by ConstructBasicGeometric(), and CTBMS_Solver::Launching_TBMS_Solver().


| bool CGeometricShape::RefillPeriodicBinding | ( | CMatrixOperation::CCSR * | pResult, |
| CCommandFileParser::LPINPUT_CMD_PARAM | lpParam, | ||
| LPNEIGHBOR_MAP_INFO | lpMapInfo, | ||
| unsigned int | nRepeatIndex, | ||
| double | fKValue[3], | ||
| unsigned int | nBandSize, | ||
| bool | bRecover | ||
| ) |
Applying phase to Hamiltonian.
| [out] | CMatrixOperation | CSR instance |
| lpParam | Input parameters parsing from command file | |
| lpMapInfo | Atom map information | |
| nRepeatIndex | Repeat index, means k points | |
| fKValue | k value for x, y, z direction | |
| nBandSize | Band Size |
Definition at line 607 of file GeometricShape.cpp.
References CMatrixOperation::CCSR::AreaScalarMultiple(), ATOM_DEFAULT_INDEX, NEIGHBOR_MAP_INFO::fItemCount, GetAtomByIndex(), CGeometricCoordination::GetCoordination(), CGeometricAtom::GetCoordination(), CGeometricDirection::GetDirectionAll(), CComplex::GetImaginaryNumber(), GetKPhaseSign(), CGeometricAtom::GetNeighborCoordination(), CGeometricAtom::GetNeighborPeriodicDirection(), CComplex::GetRealNumber(), CGeometricAtom::IsPeriodicCoupling(), m_shapDirection, NEIGHBOR_MAP_INFO::pfID, NEIGHBOR_MAP_INFO::pfNeighbor, PI_VALUE, and CComplex::SetComplexNumber().
Referenced by CTBMS_Solver::Launching_TBMS_Solver(), and CSPLoop::SolveSchroedinger().


|
private |
Rotate matrix with calculated degree.
| pMatrixNbr | Source matrix |
| pMatrixResult | Rotated matrix |
| paramter | Geometric parameters |
Definition at line 729 of file GeometricShape.cpp.
References CMatrixOperation::CDMatrix::BuildMatrixFirst(), CMatrixOperation::MMMul(), PHI_DEGREE, CMatrixOperation::CDMatrix::SetElement(), THETA_DEGREE, and CMatrixOperation::CDMatrix::TrnasPos().

|
private |
Serialize unitcells with specific later index to double array.
| fXLayer | Target x layer index |
Definition at line 1268 of file GeometricShape.cpp.
References _Y, _Z, CGeometricAtomFactory::GetAtomCountInUnitcell(), m_fAssignedCount, m_vectUnitCell, and UNITCELL_WRITING_BLOCK_SIZE.
Referenced by ExchangeAtomInfoBetweenNode().


|
static |
Set neighbor information to AtomFactory.
| lpParam | Input parameters parsing from command file |
Definition at line 952 of file GeometricShape.cpp.
References _X, _Y, _Z, CGeometricAtom::A, CGeometricAtom::A2C, CCommandFileParser::INPUT_CMD_PARAM::bNeedRotate, BuildRotationMatrix(), CGeometricAtom::C, CGeometricAtom::C2A, CalculateDegree(), CUBIC, CCommandFileParser::INPUT_CMD_PARAM::fDegree, CCommandFileParser::INPUT_CMD_PARAM::fUnitcellLength, IGeometricUnitCellInfo::GetA2CNeighborCount(), IGeometricUnitCellInfo::GetAnionCount(), IGeometricUnitCellInfo::GetAtomCoordination(), IGeometricUnitCellInfo::GetC2ANeighborCount(), IGeometricUnitCellInfo::GetCationCount(), CGeometricCoordination::GetCoordination(), IGeometricUnitCellInfo::GetNeighborCoordination(), IGeometricUnitCellInfo::GetUnitcCellSize(), CGeometricAtomFactory::InitAtomList(), IGeometricUnitCellInfo::InitCoordination(), CGeometricAtomFactory::InitNeighborList(), m_pUnitCellInfo, m_UnitCellInfo_cubic, m_UnitCellInfo_zincblende, CCommandFileParser::INPUT_CMD_PARAM::nDirectionSingle, IGeometricUnitCellInfo::RotateNeighbor(), IGeometricUnitCellInfo::SetAtomCoordination(), CGeometricAtomFactory::SetAtomCoordination(), CGeometricUnitCellInfo_zincblende::SetDireciton(), CGeometricUnitCell::SetLength(), IGeometricUnitCellInfo::SetNeighborCoordination(), CGeometricAtomFactory::SetNeighborCoordination(), CGeometricAtom::SetNeighborNumber(), IGeometricUnitCellInfo::SetUnitCellSize(), CCommandFileParser::INPUT_CMD_PARAM::szStructureType, and ZB.
Referenced by ConstructBasicGeometric(), and CTBMS_Solver::Launching_TBMS_Solver().


|
inline |
Check is this back end face side in MPI running enviroment.
Set back end side mark to shape object
Definition at line 49 of file GeometricShape.h.
References m_bBackendFace.
Referenced by SetShapeInformation().

|
inline |
Get bondary condition of shape.
Definition at line 43 of file GeometricShape.h.
References m_bConsiderBoundaryCondition.
Referenced by SetShapeInformation().

| void CGeometricShape::SetDirection | ( | double | x_axis, |
| double | y_axis, | ||
| double | z_axis | ||
| ) |
Set direciton of shape.
| x_axis | x direction information |
| y_axis | y direction information |
| z_axis | z direction information |
Definition at line 57 of file GeometricShape.cpp.
References m_shapDirection, and CGeometricDirection::SetDirection().
Referenced by SetShapeInformation().


|
inline |
Check is this front face side in MPI running enviroment.
Definition at line 47 of file GeometricShape.h.
References m_bFrontFace.
Referenced by SetShapeInformation().

| void CGeometricShape::SetLength | ( | double | lx, |
| double | ly, | ||
| double | lz | ||
| ) |
Set length of shape.
| lx | x direction length |
| ly | y direction length |
| lz | z direction length |
Definition at line 67 of file GeometricShape.cpp.
References _X, _Y, _Z, and m_fLength.
Referenced by SetShapeInformation().

|
private |
Building Hamiltonian part.
Set map info size, size that means aton count in map info
| lpMapInfo | Atom map information |
| fSize | Size of map |
<Added by="" jhkang>="">
<Added by="" jhkang="" end>="">
Definition at line 1053 of file GeometricShape.cpp.
References ALLOC_WITH_NULL_INIT, MAX_NEIGHBOR, NEIGHBOR_MAP_INFO::pAtomType, NEIGHBOR_MAP_INFO::pbPeriodicCondition, NEIGHBOR_MAP_INFO::pDomainMaterialNumber, NEIGHBOR_MAP_INFO::pfAtomOnGrid, NEIGHBOR_MAP_INFO::pfID, NEIGHBOR_MAP_INFO::pfNeighbor, NEIGHBOR_MAP_INFO::pfX_Coordination, NEIGHBOR_MAP_INFO::pfY_Coordination, NEIGHBOR_MAP_INFO::pfZ_Coordination, NEIGHBOR_MAP_INFO::pMaterialNumber, NEIGHBOR_MAP_INFO::pnDomainNumber, and NEIGHBOR_MAP_INFO::pNeighborMaterial.
Referenced by ConstructMapInfo().

|
inline |
Definition at line 128 of file GeometricShape.h.
References m_nHandlingUnitcellCount.
Referenced by CSPLoop::ConstructionGeometric().

|
inline |
Get maetrial typpe of shap.
Definition at line 37 of file GeometricShape.h.
References m_MaterialType.
Referenced by SetMaterialType(), and SetShapeInformation().

| void CGeometricShape::SetMaterialType | ( | char * | pszType | ) |
Set maetrial type of shape.
Set maetrial type of shape
| pszType | Material type information |
Definition at line 77 of file GeometricShape.cpp.
References GaAs, InAs, SetMaterialType(), and Si.

|
inline |
Get Neumann boundary condition of shape.
Definition at line 71 of file GeometricShape.h.
References m_bNeumannBoundaryCondition.
| void CGeometricShape::SetOriginCoordination | ( | double | x, |
| double | y, | ||
| double | z | ||
| ) |
Building Geometric part.
Set origin coordination of shape
| x | x coordination |
| y | y coordination |
| z | z coordination |
Definition at line 47 of file GeometricShape.cpp.
References m_originCoordination, and CGeometricCoordination::SetCoordination().
Referenced by SetShapeInformation().


|
inline |
Get form type of shape.
Definition at line 40 of file GeometricShape.h.
References m_ShapeForm.
Referenced by SetShapeForm(), and SetShapeInformation().

| void CGeometricShape::SetShapeForm | ( | char * | pszForm | ) |
Get form type of shape.
Get form type of shape
| pszForm | Shape form |
Definition at line 90 of file GeometricShape.cpp.
References BOX_SHAPE, CYLINDER_SHAPE, and SetShapeForm().

| void CGeometricShape::SetShapeInformation | ( | CCommandFileParser::LPINPUT_CMD_PARAM | lpParam | ) |
Set shape information(Length, material, bondary condition and so on)
| shape | Geometric Shape |
| lpParam | Input parameters parsing from command file |
Definition at line 926 of file GeometricShape.cpp.
References _X, _Y, _Z, CCommandFileParser::INPUT_CMD_PARAM::bConsiderBoundaryCondition, CCommandFileParser::INPUT_CMD_PARAM::fOrigin, CCommandFileParser::INPUT_CMD_PARAM::fShapeLength, CMPIManager::GetCurrentRank(), CMPIManager::GetTotalNodeCount(), CMPIManager::IsRootRank(), SetBackendFace(), SetConsideringBoundaryCondition(), SetDirection(), SetFrontFace(), SetLength(), SetMaterialType(), SetOriginCoordination(), SetShapeForm(), CCommandFileParser::INPUT_CMD_PARAM::szDomainMat, and CCommandFileParser::INPUT_CMD_PARAM::szShape.
Referenced by ConstructBasicGeometric(), and CTBMS_Solver::Launching_TBMS_Solver().


|
inline |
Get total valid atom count in shape.
Definition at line 56 of file GeometricShape.h.
References m_fTotalAtomCountinMPI.
| void CGeometricShape::SetupPEBoundaryCondition | ( | CCommandFileParser::LPINPUT_CMD_PARAM | lpParam, |
| LP_CONTACT_GROUP_INFO * | lpContactGroup | ||
| ) |
<Added by="" jhkang>="">
<Added by jhkang, Poisson equation hamiltonian construct>
Definition at line 1403 of file GeometricShape.cpp.
References _X, _Y, _Z, CCommandFileParser::INPUT_CMD_PARAM::bConsiderNeumannBoundaryCondition, BOX_SHAPE, CYLINDER_SHAPE, CMPIManager::IsRootRank(), m_bConsiderBoundaryCondition, m_bNeumannBoundaryCondition, m_ShapeForm, and CCommandFileParser::INPUT_CMD_PARAM::nContactNumber.
Referenced by CSPLoop::ConstructionGeometric().


| void CGeometricShape::ShiftAtomID | ( | double | fShift | ) |
Shift atom id in MPI running enviroment.
| fShift | Increasing count of ID |
Definition at line 1140 of file GeometricShape.cpp.
References m_vectUnitCell.
Referenced by ExchangeAtomInfoBetweenNode().

|
private |
Flag of back end face or not.
Definition at line 87 of file GeometricShape.h.
Referenced by CalculateUnitcellCount(), CheckingNeighborCandiate(), ConstructContactRegionOnPoissonGrid(), InitShape(), IsBackendFace(), and SetBackendFace().
|
private |
Bondary condition for each driection.
Definition at line 85 of file GeometricShape.h.
Referenced by ArrangeUnitCell(), CalculateUnitcellCount(), ExchangeAtomInfoBetweenNode(), GetConsideringBoundaryCondition(), GetPeriodicDirection(), InitShape(), IsInBoundaryCondition(), PeriodicUnitCellNumbering(), SetConsideringBoundaryCondition(), and SetupPEBoundaryCondition().
|
private |
Flag of front face or not.
Definition at line 86 of file GeometricShape.h.
Referenced by ArrangeUnitCell(), CalculateUnitcellCount(), CheckingNeighborCandiate(), ConstructContactRegionOnPoissonGrid(), InitShape(), IsFrontFace(), and SetFrontFace().
|
private |
Neumann bondary condition for each driection
Definition at line 100 of file GeometricShape.h.
Referenced by GetNeumannBoundaryCondition(), SetNeumannBoundaryCondition(), and SetupPEBoundaryCondition().
|
private |
Unitcell assigend count in shape for each direction.
Definition at line 83 of file GeometricShape.h.
Referenced by ArrangeUnitCell(), BuildNeighborInformation(), CalculateUnitcellCount(), CheckingNeighborCandiate(), Deserialize(), ExchangeAtomInfoBetweenNode(), PeriodicUnitCellNumbering(), and Serialize().
|
private |
Start atom index in current Shape.
Definition at line 89 of file GeometricShape.h.
Referenced by BuildPEHamiltonian(), ExchangeAtomInfoBetweenNode(), GetAtomStartID(), and InitShape().
|
private |
Building Geometric part.
Length of shape
Definition at line 77 of file GeometricShape.h.
Referenced by ArrangeUnitCell(), CalculateUnitcellCount(), ConstructContactRegionOnPoissonGrid(), InitShape(), MapElecAtomOnPoissonGrid(), and SetLength().
|
private |
Total valid atom count in shape.
Definition at line 88 of file GeometricShape.h.
Referenced by ExchangeAtomInfoBetweenNode(), GetTotalAtomCount(), InitShape(), and SetTotalAtomCount().
|
private |
Definition at line 134 of file GeometricShape.h.
Referenced by CalculateUnitcellCount(), and InitShape().
|
private |
Material type of shape.
Definition at line 90 of file GeometricShape.h.
Referenced by GetMaterialType(), InitShape(), and SetMaterialType().
| unsigned int CGeometricShape::m_nAtomFirstLayer |
<Added by="" jhkang="" end>="">
Set Neumann boundary condition of shapeBuilding Hamiltonian part First layer information for sending to previous node
Definition at line 71 of file GeometricShape.h.
Referenced by ArrangeUnitCell(), CSPLoop::BuildHamiltonian(), InitShape(), and CTBMS_Solver::Launching_TBMS_Solver().
| unsigned int CGeometricShape::m_nAtomLastLayer |
Last layer information for sending to next node.
Definition at line 76 of file GeometricShape.h.
Referenced by ArrangeUnitCell(), CSPLoop::BuildHamiltonian(), InitShape(), and CTBMS_Solver::Launching_TBMS_Solver().
|
private |
<Added by="" jhkang>="">
Definition at line 98 of file GeometricShape.h.
Referenced by BuildPEBiasVector(), and ConstructContactRegionOnPoissonGrid().
|
private |
Definition at line 133 of file GeometricShape.h.
Referenced by CalculateUnitcellCount(), InitShape(), and SetMatchingUnitcellCount().
|
private |
Orign coordination of shape.
Definition at line 95 of file GeometricShape.h.
Referenced by ArrangeUnitCell(), CalculateUnitcellCount(), ConstructContactRegionOnPoissonGrid(), InitShape(), MapElecAtomOnPoissonGrid(), and SetOriginCoordination().
|
static |
Unitcell information pointer for using in class internal.
Definition at line 126 of file GeometricShape.h.
Referenced by InitShape(), MapElecAtomOnPoissonGrid(), and SetAtomAndNeighborInformation().
|
static |
Rotation matrix for given direction.
Definition at line 127 of file GeometricShape.h.
Referenced by CHamiltonianBuilder::BuildACCANeighborFor10Band(), BuildRotationMatrix(), and CHamiltonianBuilder::RotateTransMatrixFor10Band().
|
private |
Direction of shape
Definition at line 96 of file GeometricShape.h.
Referenced by InitShape(), RefillPeriodicBinding(), and SetDirection().
|
private |
Shape form.
Definition at line 84 of file GeometricShape.h.
Referenced by ConstructContactRegionOnPoissonGrid(), GetShapeForm(), InitShape(), SetShapeForm(), and SetupPEBoundaryCondition().
|
static |
Definition at line 125 of file GeometricShape.h.
Referenced by SetAtomAndNeighborInformation().
|
static |
Definition at line 124 of file GeometricShape.h.
Referenced by SetAtomAndNeighborInformation().
|
private |
Back end edge unit cell that copy from next side node.
Definition at line 93 of file GeometricShape.h.
Referenced by ArrangeUnitCell(), ExchangeAtomInfoBetweenNode(), FreeUnitCellList(), and PeriodicUnitCellNumbering().
|
private |
Front edge unit cell that copy from previous side node.
Definition at line 92 of file GeometricShape.h.
Referenced by ArrangeUnitCell(), ExchangeAtomInfoBetweenNode(), FreeUnitCellList(), and PeriodicUnitCellNumbering().
|
private |
Definition at line 94 of file GeometricShape.h.
Referenced by FreeUnitCellList(), and GetSurfaceAtomList().
|
private |
Array of unitcell in shape.
Definition at line 91 of file GeometricShape.h.
Referenced by ArrangeUnitCell(), BuildNeighborInformation(), CheckingNeighborCandiate(), ConstructMapInfo(), Deserialize(), ExchangeAtomInfoBetweenNode(), FreeUnitCellList(), GetAtomByIndex(), PeriodicUnitCellNumbering(), Serialize(), and ShiftAtomID().
|
private |
Definition at line 99 of file GeometricShape.h.
Referenced by BuildPEWaveVector().