|
IPCC
1.0
|
Factory class for create CKNGeometricAtom instance. More...
#include "GeometricAtomFactory.h"

Public Member Functions | |
| CGeometricAtomFactory () | |
| ~CGeometricAtomFactory () | |
Static Public Member Functions | |
| static void | SetAtomCoordination (CGeometricAtom::ATOM_TYPE type, double x, double y, double z) |
| Setting atom coordination. More... | |
| static void | SetNeighborCoordination (CGeometricAtom::NEIGHOR_RELATION type, double x, double y, double z) |
| Setting neighbor coordination. More... | |
| static void | SetRatio (double fRatio[3]) |
| Set ratio that applying to length, atom coordination and neighbor position. More... | |
| static void | SetUnitCellSize (double fSize[3]) |
| Set unitcell size. More... | |
| static void | FreeFactoryData () |
| Release all setting data. More... | |
| static int | GetAtomCountInUnitcell () |
| static MATERIAL_INDEX | GetMaterialNumber (char *pszMaterialName, CGeometricAtom::ATOM_TYPE type) |
| Get total atom counts in unit cell. More... | |
| static MATERIAL_INDEX | GetMaterialNumber (char *pszMaterialName) |
| Get Atom number that mean material of atom number. More... | |
| static void | InitAtomList () |
| static void | InitNeighborList () |
| static unsigned int | GetNeighborCount () |
Static Private Attributes | |
| static std::vector < CGeometricAtom > | m_vectAtomList_1 |
| Get total Neighbor count in unit cell. More... | |
| static std::vector < CGeometricAtom > | m_vectAtomList_2 |
| Atom array for cation. More... | |
| static std::vector < CGeometricCoordination > | m_vectNeighborRelation1To2 |
| Neighbor relationship from anion to cation. More... | |
| static std::vector < CGeometricCoordination > | m_vectNeighborRelation2To1 |
| Neighbor relationship from cation to anion. More... | |
Friends | |
| class | CGeometricUnitCell |
Factory class for create CKNGeometricAtom instance.
Definition at line 17 of file GeometricAtomFactory.h.
| CGeometricAtomFactory::CGeometricAtomFactory | ( | ) |
Definition at line 17 of file GeometricAtomFactory.cpp.
| CGeometricAtomFactory::~CGeometricAtomFactory | ( | ) |
Definition at line 22 of file GeometricAtomFactory.cpp.
|
static |
Release all setting data.
Definition at line 105 of file GeometricAtomFactory.cpp.
References m_vectAtomList_1, m_vectAtomList_2, m_vectNeighborRelation1To2, and m_vectNeighborRelation2To1.
|
inlinestatic |
Definition at line 28 of file GeometricAtomFactory.h.
References m_vectAtomList_1, and m_vectAtomList_2.
Referenced by CGeometricUnitCell::AddPeridoicDirection(), CGeometricUnitCell::Deserialize(), CGeometricShape::Deserialize(), CGeometricShape::ExchangeAtomInfoBetweenNode(), CGeometricShape::Serialize(), CGeometricUnitCell::SetPeriodic(), and CGeometricUnitCell::SetPeriodicDirection().

|
static |
Get total atom counts in unit cell.
Get Atom number that mean material of atom number
| pszMaterialName | Material name |
| type | Atom type |
Definition at line 118 of file GeometricAtomFactory.cpp.
References CGeometricAtom::A, As, ATOM_NUM_BASE, CGeometricAtom::C, Ga, In, and Si.
Referenced by CGeometricUnitCell::ArrangeAtom(), CGeometricShape::BuildPEBiasVector(), CGeometricShape::BuildPEHamiltonian(), CGeometricUnitCell::NumberingSubElement(), and CGeometricUnitCell::SetSubDomainMaterial().

|
static |
Get Atom number that mean material of atom number.
| pszMaterialName | Material name |
Definition at line 158 of file GeometricAtomFactory.cpp.
References ATOM_NUM_BASE, GaAs, InAs, and Si.
|
inlinestatic |
Definition at line 33 of file GeometricAtomFactory.h.
|
static |
Definition at line 176 of file GeometricAtomFactory.cpp.
References m_vectAtomList_1, and m_vectAtomList_2.
Referenced by CGeometricShape::SetAtomAndNeighborInformation().

|
static |
Definition at line 182 of file GeometricAtomFactory.cpp.
References m_vectNeighborRelation1To2, and m_vectNeighborRelation2To1.
Referenced by CGeometricShape::SetAtomAndNeighborInformation().

|
static |
Setting atom coordination.
| type | Atom type |
| x | x coordination |
| y | y coordination |
| z | z coordination |
Definition at line 32 of file GeometricAtomFactory.cpp.
References CGeometricAtom::A, ATOM_NUM_BASE, CGeometricAtom::C, m_vectAtomList_1, m_vectAtomList_2, CGeometricAtom::SetCoordination(), and CGeometricAtom::SetType().
Referenced by CGeometricShape::SetAtomAndNeighborInformation().


|
static |
Setting neighbor coordination.
| type | Neighbor relationship type |
| x | x axis distance |
| y | y axis distance |
| z | z axis distance |
Definition at line 56 of file GeometricAtomFactory.cpp.
References CGeometricAtom::A2C, CGeometricAtom::C2A, m_vectNeighborRelation1To2, m_vectNeighborRelation2To1, and CGeometricCoordination::SetCoordination().
Referenced by CGeometricShape::SetAtomAndNeighborInformation().


|
static |
Set ratio that applying to length, atom coordination and neighbor position.
| fRatio | Ration for x, y, z direction |
Definition at line 76 of file GeometricAtomFactory.cpp.
References m_vectAtomList_1, m_vectAtomList_2, m_vectNeighborRelation1To2, and m_vectNeighborRelation2To1.
Referenced by SetUnitCellSize().

|
static |
Set unitcell size.
| fSize | size for x, y, z direction |
Definition at line 100 of file GeometricAtomFactory.cpp.
References SetRatio().

|
friend |
Definition at line 42 of file GeometricAtomFactory.h.
|
staticprivate |
Get total Neighbor count in unit cell.
Atom array for anion
Definition at line 33 of file GeometricAtomFactory.h.
Referenced by CGeometricUnitCell::ArrangeAtom(), FreeFactoryData(), GetAtomCountInUnitcell(), InitAtomList(), SetAtomCoordination(), and SetRatio().
|
staticprivate |
Atom array for cation.
Definition at line 37 of file GeometricAtomFactory.h.
Referenced by CGeometricUnitCell::ArrangeAtom(), FreeFactoryData(), GetAtomCountInUnitcell(), InitAtomList(), SetAtomCoordination(), and SetRatio().
|
staticprivate |
Neighbor relationship from anion to cation.
Definition at line 39 of file GeometricAtomFactory.h.
Referenced by CGeometricUnitCell::BuildNeighborInformation(), FreeFactoryData(), InitNeighborList(), SetNeighborCoordination(), and SetRatio().
|
staticprivate |
Neighbor relationship from cation to anion.
Definition at line 40 of file GeometricAtomFactory.h.
Referenced by CGeometricUnitCell::BuildNeighborInformation(), FreeFactoryData(), InitNeighborList(), SetNeighborCoordination(), and SetRatio().