|
|
| Brick (double HalfX=0.01, double HalfY=0.01, double HalfZ=0.01, double Signe=-1) |
| Build a Brick of size (2*HalfX,2*HalfY,2*HalfZ) at origin (0,0,0). More...
|
|
| Brick (double *Origin, double *Ux, double *Uy, double *Uz, double HalfX=0.01, double HalfY=0.01, double HalfZ=0.01, double Signe=-1) |
| Build a Brick of size (2*HalfX,2*HalfY,2*HalfZ) centered at Origin, with Ux, Uy, Uz, normal vectors to its faces. More...
|
|
| Brick (const char *Infinite, double HalfX=0.01, double HalfY=0.01, double Signe=-1) |
| Build a Brick of size (2*HalfX,2*HalfY) and of infinite height at origin (0,0,0). More...
|
|
unsigned | IsBrick () |
| return 1 for a Brick More...
|
|
|
double | GetHalfX () |
| return the half width More...
|
|
double | GetHalfY () |
| return the half length More...
|
|
double | GetHalfZ () |
| return the half height (if it exists) More...
|
|
const double * | GetOrigin () |
| return the origin More...
|
|
double * | GetUx () |
| return the 3 components of normal vector to the 2 X planes More...
|
|
double * | GetUy () |
| return the 3 components of normal vector to the 2 Y planes More...
|
|
double * | GetUz () |
| return the 3 components of normal vector to the 2 Z planes (or the axis vector if infinite) More...
|
|
void | SetPeriodicBoundary (bool state=true, string TopBottPlaneBC="mirror") |
| Periodic boundary (WARNING: only for Brick and Hexagon). More...
|
|
|
virtual void | Translate (double dx, double dy, double dz, int count=0) |
| Translate the Shape by (dx,dy,dz). More...
|
|
virtual void | Rotate (double phi, double theta=0, double psi=0, double *center=0, int count=0) |
| Rotate the Shape clockwise. More...
|
|
|
unsigned | Inclus (Shape_ptr OtherShape) |
| return 1 if the Brick is included in OtherShape otherwise 0 More...
|
|
unsigned | Disjoint (Shape_ptr OtherShape) |
| return 1 if the Brick is Disjointed of OtherShape otherwise 0 More...
|
|
bool | PointInShape (double *P, int border) |
| True if the point P is in the Shape. More...
|
|
|
string | Print () |
| Print the Brick surface in a MCNP cell. More...
|
|
void | DefineSurface () |
| Define surface in MCNP format. More...
|
|
double | MinDistanceFrom2OppositeFace (double *N, int whichplane, double *S) |
|
Shape_ptr | Clone (int count=0) |
| Clone a Shape. More...
|
|
void | Copy (Shape_ptr B) |
| Copy all attributes of a Shape (but not attributes of the ancestor classes). More...
|
|
virtual int | NumberOfShapes () |
| Number of shapes/surfaces this shape consists of. More...
|
|
| Shape () |
| Default constructor. The interior of a Shape is built. More...
|
|
| Shape (const Shape &s) |
| Copy constructor. More...
|
|
virtual | ~Shape () |
| Normal destructor. More...
|
|
double | GetSigne () |
| Return -1 if the Shape exterior is considered, +1 otherwise. More...
|
|
void | SetSigne (double s) |
|
void | SetOutermostShape (bool flag=true) |
| Say that this Shape is the most outer one. More...
|
|
bool | IsInfinite () |
| Return 1 if the Shape is an axially infinite one (??? why not resolve thru inheritance as same as shape type?) More...
|
|
virtual unsigned | IsCylinder () |
| 1 if Shape is a Cylinder More...
|
|
virtual unsigned | IsFullVoid () |
| 1 if Shape is Full (whole space) or Void (empty set) More...
|
|
virtual unsigned | IsHexagon () |
| 1 if Shape is a Hexagon More...
|
|
virtual unsigned | IsNode () |
| 1 if Shape is a Node More...
|
|
virtual unsigned | IsPlane () |
| 1 if Shape is a Plane More...
|
|
virtual unsigned | IsSphere () |
| 1 if Shape is a Sphere More...
|
|
virtual unsigned | IsTube () |
| 1 if Shape is a Tube More...
|
|
virtual unsigned | IsFull () |
| 1 if Shape is Full (whole space) More...
|
|
virtual unsigned | IsVoid () |
| 1 if Shape is Void (empty set) More...
|
|
virtual double | GetVolume () |
| Get the Volume of a Shape. More...
|
|
virtual double | GetSurface () |
| Get the Surface of a Shape. More...
|
|
void | SetVolume (double V) |
| Set the volume of a Shape to V. More...
|
|
void | SetSurface (double S) |
| Set the surface of a Shape to S. More...
|
|
virtual void | SetMirrorBoundary (bool state=true) |
| mirror a particle on the surface More...
|
|
virtual void | SetTopBottomPlanesOpen () |
| The top/bottom planes are NOT mirrors. More...
|
|
virtual bool | GetTopBottomPlanesOpen () |
| GetThe top/bottom planes are NOT mirrors. More...
|
|
virtual void | SetSidePlanesOpen () |
| The side planes are NOT mirrors. More...
|
|
virtual bool | GetSidePlanesOpen () |
| GetThe side planes are NOT mirrors. More...
|
|
virtual void | SetWhiteBoundary (bool state=true) |
| mirror a particle on the surface with a cosine distribution More...
|
|
virtual bool | IsMirrorBoundary () |
| mirror a particle on the surface More...
|
|
virtual bool | IsWhiteBoundary () |
| mirror a particle on the surface with a cosine distribution More...
|
|
virtual bool | IsPeriodicBoundary () |
| Periodic boundary (only for Brick or Hexagon) More...
|
|
Shape_ptr | Not () |
| Return the complementary Shape (i.e. the other side) More...
|
|
void | RotateVector (double *V, double phi, double theta=0, double psi=0) |
| Rotate a Vector clockwise. ??? why a shape member? More...
|
|
void | RotatePoint (double *P, double phi, double theta=0, double psi=0, double *center=0) |
| Rotate a Point clockwise.??? why a shape member? More...
|
|
virtual unsigned | Add (Shape_ptr OtherShape) |
| Add a new Shape (in fact a Shape_ptr) to a Node. More...
|
|
virtual void | SetMouvement (bool state=true) |
| Set the fMouvement flag to state;. More...
|
|
virtual void | UnSetMouvement () |
| Set the fMouvement flag to false;. More...
|
|
bool | GetMouvement () |
| returns fMouvement flag; More...
|
|
virtual void | Simplify (bool violent=false) |
| Simplify a tree of Node. More...
|
|
virtual void | DevElague (int count=0, bool violent=false) |
| Developps and Trims a tree of Node. More...
|
|
unsigned | AddInsideShape (Shape_ptr OtherShape) |
| Add a Shape in fInsideShape each time a "put in" is done. More...
|
|
unsigned | AddOriginalInsideShape (Shape_ptr OtherShape) |
| This method is called by Shape::AddInsideShape. More...
|
|
void | ClearOriginalInsideShape () |
| Clear all Inside Shapes. More...
|
|
void | ClearInsideShape () |
| Clear all Inside Shapes. More...
|
|
unsigned | GetInsideShapeSize () |
| return the number of Shape put in this More...
|
|
unsigned | GetOriginalInsideShapeSize () |
| return the number of Original Shape put in this More...
|
|
void | SetInsideShape (int i, Shape_ptr S) |
| set the ith InsideShape put in to S More...
|
|
void | SetOriginalInsideShape (int i, Shape_ptr S) |
| set the ith Original InsideShape put in to S More...
|
|
Shape_ptr | GetInsideShape (int i) |
| return the ith InsideShape put in this More...
|
|
Shape_ptr | GetOriginalInsideShape (int i) |
| return the ith Original InsideShape put in this More...
|
|
virtual string | PrintSurface () |
| Print the Shape surfaces in MCNP surface block. More...
|
|
void | SetClone (Shape_ptr clone) |
| Set the CloneShape to clone. More...
|
|
void | SetClone2Not () |
| Set the CloneShape to a Not. More...
|
|
virtual Shape_ptr | GetLeaf (int i) |
| returns the i-th leaf (Shape) of a Node More...
|
|
virtual int | GetNumberOfLeaves () |
| returns the number of leaves (Shape) of a Node More...
|
|
void | AddSurfaceNumber (int i) |
| Give the vector of Surface of the Shape. More...
|
|
vector< int > | GetSurfaceNumber () |
| Give the vector of Surface of the Shape. More...
|
|
virtual void | AlreadyDefine (bool state=true) |
| Set a flag to know wheter a surface is already defined. More...
|
|
virtual void | SetUniverse (int u=0) |
| Set the Universe number for a shape used in a lattice. More...
|
|
virtual void | SetFill (int f) |
| Set the Universe number filling a Shape. More...
|
|
int | GetUniverse () |
| return the Univers number if exists. More...
|
|
int | GetFill () |
| return the Univers number that fills the Shape. More...
|
|
void | IncrementSurface (double S) |
| Increment the surface of a Shape of S. More...
|
|
virtual void | RemoveSurface () |
|
virtual void | PrintX (int count=0) |
| Debug method: Print the shape surface when fMouvement=true. More...
|
|
virtual void | PrintY (int count=0) |
| Debug method: Print the shape surfaces, InsideShape,... More...
|
|
void | NewNot () |
| Update the Not. More...
|
|
virtual void | SetLinkedPlane (Shape_ptr P) |
| linked plane for periodic boundary More...
|
|
virtual void | ReplaceNode (Shape_ptr C) |
| Replace a Node by an other (C must be a Node) More...
|
|
double | PS (double *U, double *V) |
| Scalar product of 3D vectors U and V. More...
|
|
string | GetName () |
| returns the Shape name More...
|
|
void | SetZone (int z) |
| set test flag for complex geometries More...
|
|
int | GetZone () |
| get test flag for complex geometries More...
|
|
| TReference () |
| Default constructor. Number of references is set to 0. More...
|
|
virtual | ~TReference () |
| Destructor. More...
|
|
void | AddReference (unsigned n=1) |
| Add n references to an object. More...
|
|
unsigned | DelReference (unsigned n=1) |
| Remove n references to an object. More...
|
|
unsigned | Reference () |
| returns the Number of references to an object More...
|
|
|
| Brick (double HalfX, double HalfY, double HalfZ, double Signe, bool Infinite) |
| Private constructor needed to copy a Brick in methods. More...
|
|
void | Init (double HalfX, double HalfY, double HalfZ) |
|
unsigned | CornerInBrick (Brick *brick, int all, int border) |
| Return 1 if corner(s) of this shape are in a brick. More...
|
|
unsigned | CornerInCylinder (Cylinder *cyl, int all, int border) |
| Return 1 if corner(s) of this shape are in a cylinder. More...
|
|
double | Dist2Segment (Cylinder *cyl, double Segment[6][2], double C0[6][2], int &segmentNum) |
|
void | FindBrickProjection (Cylinder *cyl, double Segment[6][2], double C0[6][2], double Origin[2]) |
|
unsigned | GeneralIntersectionOf2Brick (Brick *brick) |
| return 1 if there is an intersection of the segment of this with the Brick brick More...
|
|
unsigned | LineCrossPlane (double *X, double *N, double *P, double *U, double *D) |
|
unsigned | CylinderCrossBrick (Cylinder *Cyl) |
|
unsigned | PointInSegment (double *X, double *A, double *B, int border) |
|
unsigned | TwoFaces3Segments (Brick *brick, double *N, int whichSize, double *C0, double C1[3][3]) |
|
unsigned | TwoFaces2Segments (Brick *brick, double *N, int whichSize, double *C0, double C1[2][3]) |
|
double | GetVirtualSphereRadius () |
| returns the radius of a Sphere containing the Shape More...
|
|
double * | GetVirtualSphereCenter () |
| returns the center of a Sphere containing the Shape More...
|
|
void | CalculNot () |
| Allocates and calculs the complement of a brick. More...
|
|
double | MinDist1Point2Face (double *U0, double *U1, double *U2, double *P0, double *S, int whichplane) |
|
double | MinDist1Point2FaceInfinite (double *U0, double *U1, double *P0, double *S, int whichplane) |
|
Surface * | DefinePlane (double *N, double D) |
| Print a Brick Plane choosing beetween P, PX, PY or PZ. More...
|
|
A rectangular parallepipede Shape.
A Brick is a rectangular parallepipede defined by half width, half length, half height (HalfX,HalfY,HalfZ).
Signe=-1 for Brick interior and Signe=+1 for its exterior.
Default: interior of a 0.01*0.01*0.01 cube, perpendicular to (x,y,z) basis and center at origin.
- Author
- PTO
- Version
- 1.0