EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
|
Go to the source code of this file.
Functions | |
int | GetElementDimension (int elementtype) |
int | GetMaxElementType (struct FemType *data) |
int | GetMinElementType (struct FemType *data) |
int | GetMaxElementDimension (struct FemType *data) |
void | GetElementInfo (int element, struct FemType *data, Real *globalcoord, int *ind, int *material) |
void | GetElementSide (int element, int side, int normal, struct FemType *data, int *ind, int *sideelemtype) |
void | NumberVariables (struct FemType *data, int variable) |
int | CalculateIndexwidth (struct FemType *data, int indxis, int *indx) |
void | InitializeKnots (struct FemType *data) |
void | AllocateKnots (struct FemType *data) |
void | CreateKnots (struct GridType *grid, struct CellType *cell, struct FemType *data, int noknots, int info) |
int | CreateVariable (struct FemType *data, int variable, int unknowns, Real value, const char *variablename, int eorder) |
void | DestroyKnots (struct FemType *data) |
int | FindParentSide (struct FemType *data, struct BoundaryType *bound, int sideelem, int sideelemtype, int *sideind) |
int | CreateBoundary (struct CellType *cell, struct FemType *data, struct BoundaryType *bound, int material1, int material2, int solidmat, int boundarytype, int info) |
int | CreateAllBoundaries (struct CellType *cell, struct FemType *data, struct BoundaryType *bound, int info) |
int | AllocateBoundary (struct BoundaryType *bound, int size) |
int | DestroyBoundary (struct BoundaryType *bound) |
int | CreatePoints (struct CellType *cell, struct FemType *data, struct BoundaryType *bound, int param1, int param2, int pointmode, int pointtype, int info) |
int | SetDiscontinuousBoundary (struct FemType *data, struct BoundaryType *bound, int boundtype, int endnodes, int info) |
int | SetConnectedBoundary (struct FemType *data, struct BoundaryType *bound, int bctype, int connecttype, int info) |
int | FindCorners (struct GridType *grid, struct CellType *cell, struct FemType *data, int info) |
int | ConstantToBilinear (struct FemType *data, int var1, int var2) |
int | ElementsToTriangles (struct FemType *data, struct BoundaryType *bound, Real critangle, int info) |
int | IncreaseElementOrder (struct FemType *data, int info) |
int | PolarCoordinates (struct FemType *data, Real rad, int info) |
int | CylinderCoordinates (struct FemType *data, int info) |
int | UniteMeshes (struct FemType *data1, struct FemType *data2, struct BoundaryType *bound1, struct BoundaryType *bound2, int info) |
int | CloneMeshes (struct FemType *data, struct BoundaryType *bound, int *ncopies, Real *meshsize, int diffmats, int info) |
int | MirrorMeshes (struct FemType *data, struct BoundaryType *bound, int *symmaxis, int diffmats, Real *meshsize, int symmbound, int info) |
void | ReorderElements (struct FemType *data, struct BoundaryType *bound, int manual, Real corder[], int info) |
int | RemoveUnusedNodes (struct FemType *data, int info) |
void | RenumberBoundaryTypes (struct FemType *data, struct BoundaryType *bound, int renumber, int bcoffset, int info) |
void | RenumberMaterialTypes (struct FemType *data, struct BoundaryType *bound, int info) |
void | CreateKnotsExtruded (struct FemType *dataxy, struct BoundaryType *boundxy, struct GridType *grid, struct FemType *data, struct BoundaryType *bound, int info) |
void | ReduceElementOrder (struct FemType *data, int matmin, int matmax) |
void | IsoparametricElements (struct FemType *data, struct BoundaryType *bound, int bcstoo, int info) |
void | MergeElements (struct FemType *data, struct BoundaryType *bound, int manual, Real corder[], Real eps, int mergebounds, int info) |
void | MergeBoundaries (struct FemType *data, struct BoundaryType *bound, int *doubles, int info) |
void | SeparateCartesianBoundaries (struct FemType *data, struct BoundaryType *bound, int info) |
void | ElementsToBoundaryConditions (struct FemType *data, struct BoundaryType *bound, int retainorphans, int info) |
int | FindPeriodicNodes (struct FemType *data, int periodicdim[], int info) |
int | FindNewBoundaries (struct FemType *data, struct BoundaryType *bound, int *boundnodes, int suggesttype, int dimred, int info) |
int | FindBulkBoundary (struct FemType *data, int mat1, int mat2, int *boundnodes, int *noboundnodes, int info) |
int | FindBoundaryBoundary (struct FemType *data, struct BoundaryType *bound, int mat1, int mat2, int *boundnodes, int *noboundnodes, int info) |
int | CreateBoundaryLayer (struct FemType *data, struct BoundaryType *bound, int nolayers, int *layerbounds, int *layernumber, Real *layerratios, Real *layerthickness, int *layerparents, int maxfilters, Real layereps, int info) |
int | CreateBoundaryLayerDivide (struct FemType *data, struct BoundaryType *bound, int nolayers, int *layerbounds, int *layernumber, Real *layerratios, Real *layerthickness, int *layerparents, int info) |
int | RotateTranslateScale (struct FemType *data, struct ElmergridType *eg, int info) |
int | RemoveLowerDimensionalBoundaries (struct FemType *data, struct BoundaryType *bound, int info) |
int | CreateDualGraph (struct FemType *data, int full, int info) |
int | DestroyDualGraph (struct FemType *data, int info) |
int | CreateInverseTopology (struct FemType *data, int info) |
int | MeshTypeStatistics (struct FemType *data, int info) |
int | SideAndBulkMappings (struct FemType *data, struct BoundaryType *bound, struct ElmergridType *eg, int info) |
int | SideAndBulkBoundaries (struct FemType *data, struct BoundaryType *bound, struct ElmergridType *eg, int info) |
int AllocateBoundary | ( | struct BoundaryType * | bound, |
int | size | ||
) |
Definition at line 1777 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 1777 of file egmesh.cpp
References BoundaryType::created, BoundaryType::ediscont, FALSE, Ivector, BoundaryType::material, BoundaryType::normal, BoundaryType::nosides, BoundaryType::parent, BoundaryType::parent2, printf(), BoundaryType::side, BoundaryType::side2, TRUE, and BoundaryType::types.
Referenced by CreateBoundaryLayer(), CreatePoints(), ElementsToBoundaryConditions(), FindEdges(), FindNewBoundaries(), LoadAbaqusInput(), LoadAnsysInput(), LoadGidInput(), and LoadTriangleInput().
void AllocateKnots | ( | struct FemType * | data | ) |
Definition at line 750 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 750 of file egmesh.cpp
References FemType::created, DEBUG, FemType::elementtypes, Imatrix, Ivector, FemType::material, FemType::maxnodes, GridType::noelements, FemType::noelements, FemType::noknots, printf(), Rvector, FemType::topology, TRUE, FemType::x, FemType::y, and FemType::z.
Referenced by CreateKnots(), CreateKnotsExtruded(), LoadAbaqusInput(), LoadAnsysInput(), LoadCGsimMesh(), LoadComsolMesh(), LoadFidapInput(), LoadGidInput(), LoadGmshInput1(), LoadGmshInput2(), LoadMeditInput(), LoadNastranInput(), LoadTriangleInput(), and LoadUniversalMesh().
int CalculateIndexwidth | ( | struct FemType * | data, |
int | indxis, | ||
int * | indx | ||
) |
Definition at line 676 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 676 of file egmesh.cpp
References FemType::elementtypes, FemType::indexwidth, FemType::noelements, FemType::noknots, GridType::nonodes, and FemType::topology.
Referenced by ReorderAutomatic(), and ReorderElements().
int CloneMeshes | ( | struct FemType * | data, |
struct BoundaryType * | bound, | ||
int * | ncopies, | ||
Real * | meshsize, | ||
int | diffmats, | ||
int | info | ||
) |
Definition at line 2821 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 2821 of file egmesh.cpp
References FemType::created, FemType::dim, BoundaryType::discont, FemType::elementtypes, free_Imatrix, free_Ivector, free_Rvector, Imatrix, Ivector, k, Acts::UnitConstants::m, FemType::material, BoundaryType::material, MAXBOUNDARIES, FemType::maxnodes, FemType::noelements, FemType::noknots, BoundaryType::normal, BoundaryType::nosides, BoundaryType::parent, BoundaryType::parent2, printf(), Rvector, BoundaryType::side, BoundaryType::side2, FemType::topology, BoundaryType::types, FemType::x, FemType::y, and FemType::z.
Referenced by ManipulateMeshDefinition().
int ConstantToBilinear | ( | struct FemType * | data, |
int | var1, | ||
int | var2 | ||
) |
int CreateAllBoundaries | ( | struct CellType * | cell, |
struct FemType * | data, | ||
struct BoundaryType * | bound, | ||
int | info | ||
) |
Definition at line 1618 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 1618 of file egmesh.cpp
References CellType::boundary, FemType::coordsystem, BoundaryType::coordsystem, FemType::created, BoundaryType::created, FemType::dim, BoundaryType::ediscont, FALSE, free_Imatrix, GetSideInfo(), Imatrix, Ivector, CellType::material, BoundaryType::material, MAX, MIN, FemType::nocells, BoundaryType::normal, BoundaryType::nosides, BoundaryType::parent, BoundaryType::parent2, printf(), BoundaryType::side, BoundaryType::side2, TRUE, and BoundaryType::types.
Referenced by CreateElmerGridMesh().
int CreateBoundary | ( | struct CellType * | cell, |
struct FemType * | data, | ||
struct BoundaryType * | bound, | ||
int | material1, | ||
int | material2, | ||
int | solidmat, | ||
int | boundarytype, | ||
int | info | ||
) |
Definition at line 1466 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 1466 of file egmesh.cpp
References CellType::boundary, FemType::coordsystem, BoundaryType::coordsystem, FemType::created, BoundaryType::created, FemType::dim, BoundaryType::ediscont, FALSE, FIRST, GetSideInfo(), Ivector, MAT_ANYTHING, MAT_BIGGER, MAT_SMALLER, CellType::material, BoundaryType::material, FemType::nocells, BoundaryType::normal, BoundaryType::nosides, BoundaryType::parent, BoundaryType::parent2, printf(), SECOND, BoundaryType::side, BoundaryType::side2, TRUE, and BoundaryType::types.
Referenced by CreateElmerGridMesh().
int CreateBoundaryLayer | ( | struct FemType * | data, |
struct BoundaryType * | bound, | ||
int | nolayers, | ||
int * | layerbounds, | ||
int * | layernumber, | ||
Real * | layerratios, | ||
Real * | layerthickness, | ||
int * | layerparents, | ||
int | maxfilters, | ||
Real | layereps, | ||
int | info | ||
) |
Definition at line 6678 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 6678 of file egmesh.cpp
References kdfinder::abs(), AllocateBoundary(), FemType::created, BoundaryType::created, Acts::Test::dim, FemType::dim, dx, dy, Acts::UnitConstants::e, FemType::elementtypes, FALSE, FM_PI, free_Imatrix, free_Ivector, free_Rvector, GetElementSide(), GetMaxElementType(), Imatrix, Ivector, k, Acts::UnitConstants::m, FemType::material, MAXBOUNDARIES, FemType::maxnodes, MAXNODESD1, MAXNODESD2, n, FemType::noelements, FemType::noknots, BoundaryType::nosides, p, BoundaryType::parent, BoundaryType::parent2, printf(), ratio, ReorderElements(), Rvector, BoundaryType::side, BoundaryType::side2, FemType::topology, TRUE, BoundaryType::types, FemType::x, FemType::y, and FemType::z.
Referenced by ManipulateMeshDefinition().
int CreateBoundaryLayerDivide | ( | struct FemType * | data, |
struct BoundaryType * | bound, | ||
int | nolayers, | ||
int * | layerbounds, | ||
int * | layernumber, | ||
Real * | layerratios, | ||
Real * | layerthickness, | ||
int * | layerparents, | ||
int | info | ||
) |
Definition at line 7729 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 7729 of file egmesh.cpp
References FemType::created, Acts::Test::dim, FemType::dim, dx, dy, Acts::UnitConstants::e, FemType::elementtypes, FALSE, GetElementSide(), GetMaxElementType(), Imatrix, Ivector, k, FemType::material, MAX, MAXBOUNDARIES, FemType::maxnodes, MAXNODESD2, FemType::noelements, FemType::noknots, BoundaryType::nosides, BoundaryType::parent, printf(), ratio, Rvector, FemType::topology, TRUE, BoundaryType::types, FemType::x, FemType::y, and FemType::z.
Referenced by ManipulateMeshDefinition().
int CreateDualGraph | ( | struct FemType * | data, |
int | full, | ||
int | info | ||
) |
Definition at line 8294 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 8294 of file egmesh.cpp
References FemType::dualexists, FemType::dualgraph, FemType::dualmaxconnections, FemType::elementtypes, FALSE, GetElementGraph(), Ivector, k, Acts::UnitConstants::m, FemType::noelements, FemType::noknots, FemType::periodic, FemType::periodicexist, printf(), FemType::topology, and TRUE.
Referenced by IncreaseElementOrder().
int CreateInverseTopology | ( | struct FemType * | data, |
int | info | ||
) |
Definition at line 8444 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 8444 of file egmesh.cpp
References FemType::elementtypes, free_Ivector, FemType::invtopo, FemType::invtopoexists, Ivector, Acts::UnitConstants::m, MAX, FemType::maxinvtopo, MIN, FemType::noelements, FemType::noknots, printf(), smallerror(), FemType::topology, and TRUE.
Referenced by LoadTriangleInput().
void CreateKnots | ( | struct GridType * | grid, |
struct CellType * | cell, | ||
struct FemType * | data, | ||
int | noknots, | ||
int | info | ||
) |
Definition at line 1063 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 1063 of file egmesh.cpp
References kdfinder::abs(), AllocateKnots(), GridType::boundext, FemType::boundext, GridType::boundint, FemType::boundint, GridType::boundsolid, FemType::boundsolid, GridType::boundtype, FemType::boundtype, GridType::coordsystem, FemType::coordsystem, DIM, Acts::Test::dim, FemType::dim, GridType::dimension, dx, dy, dz, FemType::elementtypes, FALSE, GetElementCoordinates(), GetElementInfo(), FemType::indexwidth, InitializeKnots(), k, GridType::mappinglimits, GridType::mappingline, GridType::mappingparams, GridType::mappingpoints, GridType::mappings, GridType::mappingtype, CellType::material, material(), FemType::material, MAX, MAXBOUNDARIES, MAXMAPPINGS, FemType::maxnodes, MAXNODESD2, FemType::maxsize, GridType::maxwidth, FemType::minsize, MovePointAngle(), MovePointArc(), MovePointCircle(), MovePointLinear(), MovePointPower(), MovePointPowerSeries(), MovePointPowerSeries2(), MovePointSinus(), GridType::noboundaries, FemType::noboundaries, GridType::nocells, FemType::nocells, GridType::noelements, FemType::noelements, GridType::noknots, FemType::noknots, GridType::nonodes, GridType::numbered, printf(), FemType::topology, TRUE, GridType::x, x, FemType::x, GridType::xcells, GridType::xelems, GridType::y, y, FemType::y, GridType::ycells, GridType::yelems, and FemType::z.
Referenced by CreateElmerGridMesh().
void CreateKnotsExtruded | ( | struct FemType * | dataxy, |
struct BoundaryType * | boundxy, | ||
struct GridType * | grid, | ||
struct FemType * | data, | ||
struct BoundaryType * | bound, | ||
int | info | ||
) |
Definition at line 5271 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 5271 of file egmesh.cpp
References AllocateKnots(), FemType::connectexist, COORD_CART3, FemType::coordsystem, BoundaryType::coordsystem, FemType::created, BoundaryType::created, GridType::curveangle, GridType::curverad, GridType::curvezet, CylindricalCoordinateCurve(), CylindricalCoordinateImprove(), CylindricalCoordinateTransformation(), FemType::dim, GridType::dimension, GridType::dz, FemType::elementtypes, eps, FALSE, FM_PI, free_Ivector, free_Rvector, GetElementSide(), InitializeKnots(), Ivector, k, GridType::layeredbc, Acts::UnitConstants::m, material(), FemType::material, BoundaryType::material, MAX, FemType::maxnodes, MAXNODESD1, FemType::maxsize, FemType::minsize, n, FemType::noboundaries, FemType::noelements, FemType::noknots, BoundaryType::normal, BoundaryType::nosides, p, BoundaryType::parent, BoundaryType::parent2, FemType::partitionexist, FemType::periodicexist, printf(), Acts::UnitConstants::rad, ReorderElements(), GridType::rotate, GridType::rotateblocks, GridType::rotatecartesian, GridType::rotatecurve, GridType::rotateimprove, GridType::rotateradius1, GridType::rotateradius2, Rvector, SeparateMainaxisBoundaries(), SetElementDivisionCylinder(), SetElementDivisionExtruded(), BoundaryType::side, BoundaryType::side2, GridType::structure, boost::swap(), FemType::topology, GridType::totzelems, TRUE, BoundaryType::types, GridType::x, FemType::x, GridType::xcells, GridType::y, FemType::y, GridType::ycells, GridType::z, z, FemType::z, GridType::zcells, GridType::zelems, GridType::zexpand, GridType::zfirstmaterial, GridType::zlastmaterial, GridType::zlinear, GridType::zmaterial, and GridType::zratios.
Referenced by ManipulateMeshDefinition().
int CreatePoints | ( | struct CellType * | cell, |
struct FemType * | data, | ||
struct BoundaryType * | bound, | ||
int | param1, | ||
int | param2, | ||
int | pointmode, | ||
int | pointtype, | ||
int | info | ||
) |
Definition at line 1850 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 1850 of file egmesh.cpp
References AllocateBoundary(), BOTLEFT, BOTRIGHT, BoundaryType::created, FALSE, GetElementIndex(), material(), BoundaryType::material, FemType::nocells, BoundaryType::nosides, BoundaryType::parent, printf(), BoundaryType::side, TOPLEFT, FemType::topology, TOPRIGHT, BoundaryType::types, FemType::x, and FemType::y.
Referenced by CreateElmerGridMesh().
int CreateVariable | ( | struct FemType * | data, |
int | variable, | ||
int | unknowns, | ||
Real | value, | ||
const char * | variablename, | ||
int | eorder | ||
) |
Definition at line 1279 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 1279 of file egmesh.cpp
References FemType::alldofs, FemType::created, FemType::dofname, FemType::dofs, FemType::edofs, FALSE, info, FemType::noknots, printf(), Rvector, FemType::timesteps, and FemType::variables.
Referenced by LoadCGsimMesh(), and LoadFidapInput().
int CylinderCoordinates | ( | struct FemType * | data, |
int | info | ||
) |
Definition at line 2694 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 2694 of file egmesh.cpp
References cos(), FM_PI, FemType::noknots, printf(), Acts::UnitConstants::rad, FemType::x, and FemType::y.
Referenced by ManipulateMeshDefinition().
int DestroyBoundary | ( | struct BoundaryType * | bound | ) |
Definition at line 1816 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 1816 of file egmesh.cpp
References BoundaryType::created, FALSE, free_Ivector, BoundaryType::material, BoundaryType::normal, BoundaryType::nosides, BoundaryType::parent, BoundaryType::parent2, printf(), BoundaryType::side, BoundaryType::side2, and BoundaryType::types.
Referenced by eg_transfermesh(), and ManipulateMeshDefinition().
int DestroyDualGraph | ( | struct FemType * | data, |
int | info | ||
) |
Definition at line 8420 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 8420 of file egmesh.cpp
References FemType::dualexists, FemType::dualgraph, FemType::dualmaxconnections, FALSE, free_Ivector, FemType::noknots, and printf().
Referenced by IncreaseElementOrder().
void DestroyKnots | ( | struct FemType * | data | ) |
Definition at line 1323 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 1323 of file egmesh.cpp
References FemType::alldofs, FemType::created, FemType::dofs, FemType::edofs, FemType::elementtypes, FALSE, free_Imatrix, free_Ivector, free_Rvector, FemType::material, MAXDOFS, FemType::maxnodes, FemType::noelements, FemType::noknots, FemType::topology, FemType::x, FemType::y, and FemType::z.
Referenced by eg_transfermesh(), ManipulateMeshDefinition(), and UniteMeshes().
void ElementsToBoundaryConditions | ( | struct FemType * | data, |
struct BoundaryType * | bound, | ||
int | retainorphans, | ||
int | info | ||
) |
Definition at line 6165 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 6165 of file egmesh.cpp
References AllocateBoundary(), FemType::bodyname, FemType::bodynamesexist, FemType::boundaryname, FemType::boundarynamesexist, FemType::created, Acts::Test::debug, FemType::elementtypes, BoundaryType::elementtypes, FALSE, free_Imatrix, free_Ivector, GetElementDimension(), GetElementSide(), GetMaxElementType(), GetMinElementType(), Imatrix, FemType::invtopo, Ivector, k, material(), FemType::material, MAXBODIES, MAXBOUNDARIES, MAXNODESD1, MAXNODESD2, FemType::noelements, FemType::noknots, BoundaryType::normal, BoundaryType::nosides, BoundaryType::parent, BoundaryType::parent2, printf(), BoundaryType::side, BoundaryType::side2, FemType::topology, BoundaryType::topology, TRUE, and BoundaryType::types.
Referenced by LoadComsolMesh(), LoadFidapInput(), LoadFieldviewInput(), LoadGmshInput1(), LoadGmshInput2(), and LoadUniversalMesh().
int ElementsToTriangles | ( | struct FemType * | data, |
struct BoundaryType * | bound, | ||
Real | critangle, | ||
int | info | ||
) |
Definition at line 2347 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 2347 of file egmesh.cpp
References kdfinder::abs(), charm_jet_coverage::angles, FemType::created, data, FemType::elementtypes, FALSE, FM_PI, free_Imatrix, free_Ivector, GetElementSide(), Imatrix, Ivector, k, FemType::material, MAX, MAXBOUNDARIES, FemType::maxnodes, MAXNODESD1, GridType::noelements, FemType::noelements, GridType::noknots, FemType::noknots, GridType::nonodes, BoundaryType::nosides, BoundaryType::parent, BoundaryType::parent2, printf(), BoundaryType::side, BoundaryType::side2, FemType::topology, GridType::triangles, TRUE, FemType::x, and FemType::y.
Referenced by ManipulateMeshDefinition().
int FindBoundaryBoundary | ( | struct FemType * | data, |
struct BoundaryType * | bound, | ||
int | mat1, | ||
int | mat2, | ||
int * | boundnodes, | ||
int * | noboundnodes, | ||
int | info | ||
) |
Definition at line 4348 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 4348 of file egmesh.cpp
References kdfinder::abs(), FemType::created, FemType::dim, dz2, eps, FM_PI, free_Ivector, free_Rvector, GetElementSide(), Ivector, k, material(), MAX, MAXBOUNDARIES, FemType::maxnodes, MAXNODESD2, MIN, FemType::noknots, BoundaryType::nosides, printf(), Rvector, BoundaryType::types, FemType::x, xmax, xmin, FemType::y, ymax, ymin, and FemType::z.
Referenced by SideAndBulkBoundaries().
int FindBulkBoundary | ( | struct FemType * | data, |
int | mat1, | ||
int | mat2, | ||
int * | boundnodes, | ||
int * | noboundnodes, | ||
int | info | ||
) |
Definition at line 4134 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 4134 of file egmesh.cpp
References FemType::dim, dz2, FemType::elementtypes, eps, FALSE, FM_PI, free_Ivector, free_Rvector, Ivector, k, material(), FemType::material, FemType::maxnodes, FemType::noelements, FemType::noknots, printf(), Rvector, FemType::topology, TRUE, FemType::x, xmax, xmin, FemType::y, ymax, ymin, and FemType::z.
Referenced by SideAndBulkBoundaries().
int FindNewBoundaries | ( | struct FemType * | data, |
struct BoundaryType * | bound, | ||
int * | boundnodes, | ||
int | suggesttype, | ||
int | dimred, | ||
int | info | ||
) |
Definition at line 3972 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 3972 of file egmesh.cpp
References AllocateBoundary(), CompareIndexes(), BoundaryType::created, Acts::Test::dim, FemType::dim, FemType::elementtypes, FALSE, GetElementSide(), MAXBOUNDARIES, MAXNODESD1, FemType::noelements, FemType::noknots, BoundaryType::nosides, BoundaryType::parent, BoundaryType::parent2, printf(), BoundaryType::side, BoundaryType::side2, TRUE, and BoundaryType::types.
Referenced by SideAndBulkBoundaries().
int FindParentSide | ( | struct FemType * | data, |
struct BoundaryType * | bound, | ||
int | sideelem, | ||
int | sideelemtype, | ||
int * | sideind | ||
) |
Definition at line 1352 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 1352 of file egmesh.cpp
References FemType::elementtypes, FALSE, GetElementSide(), MAXNODESD1, BoundaryType::normal, BoundaryType::parent, BoundaryType::parent2, printf(), BoundaryType::side, BoundaryType::side2, Acts::Test::skip, FemType::topology, and TRUE.
int FindPeriodicNodes | ( | struct FemType * | data, |
int | periodicdim[], | ||
int | info | ||
) |
Definition at line 6479 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 6479 of file egmesh.cpp
References kdfinder::abs(), Acts::Test::dim, FemType::dim, dx, dy, dz, Acts::UnitConstants::e, eps, FALSE, Ivector, FemType::noknots, FemType::periodic, FemType::periodicexist, printf(), Rvector, TRUE, FemType::x, FemType::y, and FemType::z.
Referenced by ManipulateMeshDefinition().
int GetElementDimension | ( | int | elementtype | ) |
Definition at line 66 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 66 of file egmesh.cpp
References printf().
Referenced by ElementsToBoundaryConditions(), GetMaxElementDimension(), LoadComsolMesh(), RemoveLowerDimensionalBoundaries(), and RenumberBoundaryTypes().
void GetElementInfo | ( | int | element, |
struct FemType * | data, | ||
Real * | globalcoord, | ||
int * | ind, | ||
int * | material | ||
) |
Definition at line 47 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 47 of file egmesh.cpp
References FemType::elementtypes, FemType::material, FemType::topology, FemType::x, and FemType::y.
Referenced by CreateKnots().
void GetElementSide | ( | int | element, |
int | side, | ||
int | normal, | ||
struct FemType * | data, | ||
int * | ind, | ||
int * | sideelemtype | ||
) |
Definition at line 131 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 131 of file egmesh.cpp
References FemType::elementtypes, MAXNODESD2, printf(), and FemType::topology.
Referenced by ConvertEgTypeToMeshType(), CreateBoundaryLayer(), CreateBoundaryLayerDivide(), CreateKnotsExtruded(), ElementsToBoundaryConditions(), ElementsToTriangles(), FindBoundaryBoundary(), FindEdges(), FindNewBoundaries(), FindParentSide(), FindPointParents(), LoadGidInput(), LoadTriangleInput(), MergeBoundaries(), RemoveLowerDimensionalBoundaries(), RenumberBoundaryTypes(), SeparateCartesianBoundaries(), SeparateMainaxisBoundaries(), SetConnectedBoundary(), and SetDiscontinuousBoundary().
int GetMaxElementDimension | ( | struct FemType * | data | ) |
Definition at line 120 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 120 of file egmesh.cpp
References GetElementDimension(), and GetMaxElementType().
Referenced by ConvertEgTypeToMeshType().
int GetMaxElementType | ( | struct FemType * | data | ) |
Definition at line 94 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 94 of file egmesh.cpp
References FemType::elementtypes, and FemType::noelements.
Referenced by CreateBoundaryLayer(), CreateBoundaryLayerDivide(), ElementsToBoundaryConditions(), FindEdges(), GetMaxElementDimension(), IncreaseElementOrder(), and RemoveLowerDimensionalBoundaries().
int GetMinElementType | ( | struct FemType * | data | ) |
Definition at line 107 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 107 of file egmesh.cpp
References FemType::elementtypes, and FemType::noelements.
Referenced by ElementsToBoundaryConditions().
int IncreaseElementOrder | ( | struct FemType * | data, |
int | info | ||
) |
Definition at line 4588 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 4588 of file egmesh.cpp
References bigerror(), CreateDualGraph(), DestroyDualGraph(), FemType::dualgraph, FemType::dualmaxconnections, FemType::elementtypes, FALSE, free_Imatrix, free_Rvector, GetElementGraph(), GetMaxElementType(), Imatrix, FemType::maxnodes, FemType::noelements, FemType::noknots, printf(), Rvector, FemType::topology, FemType::x, FemType::y, and FemType::z.
Referenced by ManipulateMeshDefinition().
void InitializeKnots | ( | struct FemType * | data | ) |
Definition at line 708 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 708 of file egmesh.cpp
References FemType::bodyname, FemType::bodynamesexist, FemType::boundaryname, FemType::boundarynamesexist, FemType::connectexist, COORD_CART2, FemType::coordsystem, FemType::created, FemType::dofname, FemType::dualexists, FemType::edofs, FALSE, FemType::indexwidth, FemType::invtopoexists, MAXBCS, MAXBODIES, MAXDOFS, FemType::maxnodes, FemType::noboundaries, FemType::noelements, FemType::noknots, FemType::nopartitions, FemType::partitionexist, FemType::partitiontableexists, FemType::periodicexist, FemType::timesteps, and FemType::variables.
Referenced by CreateKnots(), CreateKnotsExtruded(), LoadAbaqusInput(), LoadAnsysInput(), LoadCGsimMesh(), LoadComsolMesh(), LoadFidapInput(), LoadFieldviewInput(), LoadGidInput(), LoadGmshInput1(), LoadGmshInput2(), LoadMeditInput(), LoadNastranInput(), LoadTriangleInput(), and LoadUniversalMesh().
void IsoparametricElements | ( | struct FemType * | data, |
struct BoundaryType * | bound, | ||
int | bcstoo, | ||
int | info | ||
) |
void MergeBoundaries | ( | struct FemType * | data, |
struct BoundaryType * | bound, | ||
int * | doubles, | ||
int | info | ||
) |
Definition at line 6111 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 6111 of file egmesh.cpp
References FemType::created, BoundaryType::created, FALSE, GetElementSide(), k, MAXBOUNDARIES, MAXNODESD1, BoundaryType::normal, BoundaryType::nosides, BoundaryType::parent, BoundaryType::parent2, printf(), BoundaryType::side, BoundaryType::side2, and BoundaryType::types.
Referenced by MergeElements().
void MergeElements | ( | struct FemType * | data, |
struct BoundaryType * | bound, | ||
int | manual, | ||
Real | corder[], | ||
Real | eps, | ||
int | mergebounds, | ||
int | info | ||
) |
Definition at line 5991 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 5991 of file egmesh.cpp
References dx, dy, dz, FemType::elementtypes, free_Ivector, free_Rvector, Ivector, k, MergeBoundaries(), FemType::noelements, FemType::noknots, printf(), ReorderElements(), Rvector, FemType::topology, TRUE, FemType::x, FemType::y, and FemType::z.
Referenced by ManipulateMeshDefinition().
int MeshTypeStatistics | ( | struct FemType * | data, |
int | info | ||
) |
Definition at line 8500 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 8500 of file egmesh.cpp
References FemType::elementtypes, free_Ivector, Ivector, MAX, MIN, FemType::noelements, and printf().
int MirrorMeshes | ( | struct FemType * | data, |
struct BoundaryType * | bound, | ||
int * | symmaxis, | ||
int | diffmats, | ||
Real * | meshsize, | ||
int | symmbound, | ||
int | info | ||
) |
Definition at line 3004 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 3004 of file egmesh.cpp
References FemType::created, FemType::dim, BoundaryType::discont, FemType::elementtypes, free_Imatrix, free_Ivector, free_Rvector, Imatrix, Ivector, Acts::UnitConstants::m, FemType::material, BoundaryType::material, MAXBOUNDARIES, FemType::maxnodes, FemType::noelements, FemType::noknots, BoundaryType::normal, BoundaryType::nosides, BoundaryType::parent, BoundaryType::parent2, printf(), Rvector, BoundaryType::side, BoundaryType::side2, FemType::topology, BoundaryType::types, FemType::x, FemType::y, and FemType::z.
void NumberVariables | ( | struct FemType * | data, |
int | variable | ||
) |
Definition at line 2673 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 2673 of file egmesh.cpp
References cos(), FM_PI, FemType::noknots, printf(), FemType::x, FemType::y, and FemType::z.
Referenced by ManipulateMeshDefinition().
void ReduceElementOrder | ( | struct FemType * | data, |
int | matmin, | ||
int | matmax | ||
) |
Definition at line 5922 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 5922 of file egmesh.cpp
References FemType::elementtypes, free_Rvector, Ivector, material(), FemType::material, FemType::noelements, FemType::noknots, printf(), Rvector, FemType::topology, FemType::x, FemType::y, and FemType::z.
Referenced by ManipulateMeshDefinition().
int RemoveLowerDimensionalBoundaries | ( | struct FemType * | data, |
struct BoundaryType * | bound, | ||
int | info | ||
) |
Definition at line 3765 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 3765 of file egmesh.cpp
References FemType::created, GetElementDimension(), GetElementSide(), GetMaxElementType(), MAXBOUNDARIES, MAXNODESD1, FemType::noelements, BoundaryType::nosides, BoundaryType::parent, BoundaryType::parent2, printf(), BoundaryType::side, BoundaryType::side2, and BoundaryType::types.
Referenced by ManipulateMeshDefinition().
int RemoveUnusedNodes | ( | struct FemType * | data, |
int | info | ||
) |
Definition at line 3569 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 3569 of file egmesh.cpp
References FemType::elementtypes, free_Ivector, Ivector, FemType::noelements, FemType::noknots, printf(), FemType::topology, FemType::x, FemType::y, and FemType::z.
Referenced by ManipulateMeshDefinition().
void RenumberBoundaryTypes | ( | struct FemType * | data, |
struct BoundaryType * | bound, | ||
int | renumber, | ||
int | bcoffset, | ||
int | info | ||
) |
Definition at line 3624 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 3624 of file egmesh.cpp
References FemType::boundaryname, FemType::boundarynamesexist, FemType::created, FALSE, free_Ivector, GetElementDimension(), GetElementSide(), Ivector, k, MAX, MAXBODIES, MAXBOUNDARIES, MAXNODESD1, MIN, BoundaryType::nosides, printf(), TRUE, and BoundaryType::types.
Referenced by LoadFidapInput(), LoadGmshInput2(), and ManipulateMeshDefinition().
void RenumberMaterialTypes | ( | struct FemType * | data, |
struct BoundaryType * | bound, | ||
int | info | ||
) |
Definition at line 3711 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 3711 of file egmesh.cpp
References FemType::bodyname, FemType::bodynamesexist, FALSE, free_Ivector, Ivector, k, FemType::material, MAX, MAXBODIES, MIN, FemType::noelements, printf(), and TRUE.
Referenced by LoadGmshInput2(), and ManipulateMeshDefinition().
void ReorderElements | ( | struct FemType * | data, |
struct BoundaryType * | bound, | ||
int | manual, | ||
Real | corder[], | ||
int | info | ||
) |
Definition at line 3401 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 3401 of file egmesh.cpp
References CalculateIndexwidth(), FemType::created, FemType::dim, dx, dy, dz, FemType::elementtypes, FALSE, free_Ivector, free_Rvector, Imatrix, Ivector, k, G4BARRELHCAL::length, FemType::material, MAXBOUNDARIES, FemType::maxnodes, FemType::noelements, FemType::noknots, BoundaryType::nosides, BoundaryType::parent, BoundaryType::parent2, printf(), ReorderAutomatic(), Rvector, SortIndex(), FemType::topology, TRUE, x, FemType::x, xmax, xmin, y, FemType::y, ymax, ymin, z, and FemType::z.
Referenced by CreateBoundaryLayer(), CreateKnotsExtruded(), ManipulateMeshDefinition(), and MergeElements().
int RotateTranslateScale | ( | struct FemType * | data, |
struct ElmergridType * | eg, | ||
int | info | ||
) |
Definition at line 8196 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 8196 of file egmesh.cpp
References ElmergridType::center, cos(), ElmergridType::crotate, ElmergridType::cscale, ElmergridType::ctranslate, FemType::dim, FM_PI, MAX, MIN, FemType::noknots, printf(), ElmergridType::rotate, ElmergridType::scale, ElmergridType::translate, x, FemType::x, xmax, xmin, y, FemType::y, ymax, ymin, z, and FemType::z.
Referenced by ManipulateMeshDefinition().
void SeparateCartesianBoundaries | ( | struct FemType * | data, |
struct BoundaryType * | bound, | ||
int | info | ||
) |
Definition at line 4981 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 4981 of file egmesh.cpp
References FemType::created, dx, dy, dz, eps, FALSE, GetElementSide(), k, MAXBOUNDARIES, BoundaryType::nosides, printf(), TRUE, BoundaryType::types, x, FemType::x, y, FemType::y, z, and FemType::z.
int SetConnectedBoundary | ( | struct FemType * | data, |
struct BoundaryType * | bound, | ||
int | bctype, | ||
int | connecttype, | ||
int | info | ||
) |
Definition at line 2307 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 2307 of file egmesh.cpp
References FemType::connect, FemType::connectexist, FALSE, GetElementSide(), Ivector, k, MAXBOUNDARIES, MAXNODESD1, FemType::noknots, BoundaryType::nosides, and TRUE.
Referenced by ManipulateMeshDefinition().
int SetDiscontinuousBoundary | ( | struct FemType * | data, |
struct BoundaryType * | bound, | ||
int | boundtype, | ||
int | endnodes, | ||
int | info | ||
) |
Definition at line 2041 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 2041 of file egmesh.cpp
References kdfinder::abs(), GridType::boundtype, CreateNewNodes(), BoundaryType::discont, BoundaryType::ediscont, FemType::elementtypes, FALSE, free_Ivector, GetElementSide(), Ivector, material(), FemType::material, MAX, MAXBOUNDARIES, MAXNODESD1, GridType::noelements, FemType::noelements, GridType::noknots, FemType::noknots, GridType::nonodes, BoundaryType::nosides, BoundaryType::parent, BoundaryType::parent2, printf(), BoundaryType::side2, FemType::topology, and TRUE.
Referenced by ManipulateMeshDefinition().
int SideAndBulkBoundaries | ( | struct FemType * | data, |
struct BoundaryType * | bound, | ||
struct ElmergridType * | eg, | ||
int | info | ||
) |
Definition at line 8581 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 8581 of file egmesh.cpp
References ElmergridType::boundbound, ElmergridType::boundbounds, ElmergridType::bulkbound, ElmergridType::bulkbounds, FindBoundaryBoundary(), FindBulkBoundary(), FindNewBoundaries(), free_Ivector, Ivector, and FemType::noknots.
Referenced by ManipulateMeshDefinition().
int SideAndBulkMappings | ( | struct FemType * | data, |
struct BoundaryType * | bound, | ||
struct ElmergridType * | eg, | ||
int | info | ||
) |
Definition at line 8534 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 8534 of file egmesh.cpp
References ElmergridType::bulkmap, ElmergridType::bulkmappings, FemType::created, FemType::material, MAXBOUNDARIES, FemType::noelements, BoundaryType::nosides, printf(), ElmergridType::sidemap, ElmergridType::sidemappings, and BoundaryType::types.
Referenced by ManipulateMeshDefinition().
int UniteMeshes | ( | struct FemType * | data1, |
struct FemType * | data2, | ||
struct BoundaryType * | bound1, | ||
struct BoundaryType * | bound2, | ||
int | info | ||
) |
Definition at line 2713 of file egmesh.cpp.
View newest version in sPHENIX GitHub at line 2713 of file egmesh.cpp
References BoundaryType::coordsystem, FemType::created, BoundaryType::created, DestroyKnots(), FemType::dim, FemType::elementtypes, FALSE, free_Imatrix, free_Ivector, free_Rvector, Imatrix, Ivector, k, FemType::material, BoundaryType::material, MAX, MAXBOUNDARIES, FemType::maxnodes, FemType::noelements, FemType::noknots, BoundaryType::normal, BoundaryType::nosides, BoundaryType::parent, BoundaryType::parent2, printf(), Rvector, BoundaryType::side, BoundaryType::side2, FemType::topology, BoundaryType::types, FemType::x, FemType::y, and FemType::z.
Referenced by ManipulateMeshDefinition().