Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
Arcane::Numerics::Euclidian3Geometry Class Reference
Inheritance diagram for Arcane::Numerics::Euclidian3Geometry:
Collaboration diagram for Arcane::Numerics::Euclidian3Geometry:

Classes

struct  IComputeLine
struct  ComputeLine2
struct  IComputeSurface
struct  ComputeTriangle3
struct  ComputeQuad4
struct  ComputePentagon5
struct  ComputeHexagon6
struct  IComputeVolume
struct  ComputeTetraedron4
struct  ComputeHeptaedron10
struct  ComputeOctaedron12
struct  ComputeGenericVolume

Public Types

typedef ComputeGenericVolume ComputePyramid5
typedef ComputeGenericVolume ComputePentaedron6
typedef ComputeGenericVolume ComputeHexaedron8
typedef ComputeGenericVolume ComputeHemiHexa7
typedef ComputeGenericVolume ComputeHemiHexa6
typedef ComputeGenericVolume ComputeHemiHexa5
typedef ComputeGenericVolume ComputeAntiWedgeLeft6
typedef ComputeGenericVolume ComputeAntiWedgeRight6
typedef ComputeGenericVolume ComputeDiTetra5

Public Member Functions

 Euclidian3Geometry (const VariableNodeReal3 &coords)
Real3 computeCenter (const ItemWithNodes &item)
 Calculation of the center of mass.
Real3 computeOrientedMeasure (const ItemWithNodes &item)
 Calculation of the oriented measure.
Real computeMeasure (const ItemWithNodes &item)
 Calculation of the measure (without orientation).
Real computeLength (const ItemWithNodes &item)
 Calculation of the length.
Real computeArea (const ItemWithNodes &item)
 Calculation of the area.
Real computeVolume (const ItemWithNodes &item)
 Calculation of the volume.
Real3 computeSurfaceCenter (Integer n, const Real3 *coords)
 Calculation of the center.
Real3 computeOrientedArea (Integer n, const Real3 *coords)
 Calculation of the oriented area (i.e., normal).
Real computeLength (const Real3 &m, const Real3 &n)
 Calculation of the length of a segment defined by two points.
Public Member Functions inherited from Arcane::Numerics::IGeometry
 IGeometry ()
virtual ~IGeometry ()

Static Public Member Functions

static Real3 computeTriangleNormal (const Real3 &n0, const Real3 &n1, const Real3 &n2)
static Real computeTriangleSurface (const Real3 &n0, const Real3 &n1, const Real3 &n2)
static Real3 computeTriangleCenter (const Real3 &n0, const Real3 &n1, const Real3 &n2)
static Real computeTetraedronVolume (const Real3 &n0, const Real3 &n1, const Real3 &n2, const Real3 &n3)
static Real3 computeTetraedronCenter (const Real3 &n0, const Real3 &n1, const Real3 &n2, const Real3 &n3)
static Real3 computeQuadrilateralCenter (const Real3 &n0, const Real3 &n1, const Real3 &n2, const Real3 &n3)
static Real3 computePentagonalCenter (const Real3 &n0, const Real3 &n1, const Real3 &n2, const Real3 &n3, const Real3 &n4)
static Real3 computeHexagonalCenter (const Real3 &n0, const Real3 &n1, const Real3 &n2, const Real3 &n3, const Real3 &n4, const Real3 &n5)

Protected Attributes

const VariableNodeReal3m_coords

Detailed Description

Definition at line 32 of file Euclidian3Geometry.h.

Member Typedef Documentation

◆ ComputeAntiWedgeLeft6

typedef ComputeGenericVolume Arcane::Numerics::Euclidian3Geometry::ComputeAntiWedgeLeft6

Definition at line 228 of file Euclidian3Geometry.h.

◆ ComputeAntiWedgeRight6

typedef ComputeGenericVolume Arcane::Numerics::Euclidian3Geometry::ComputeAntiWedgeRight6

Definition at line 229 of file Euclidian3Geometry.h.

◆ ComputeDiTetra5

typedef ComputeGenericVolume Arcane::Numerics::Euclidian3Geometry::ComputeDiTetra5

Definition at line 230 of file Euclidian3Geometry.h.

◆ ComputeHemiHexa5

typedef ComputeGenericVolume Arcane::Numerics::Euclidian3Geometry::ComputeHemiHexa5

Definition at line 227 of file Euclidian3Geometry.h.

◆ ComputeHemiHexa6

typedef ComputeGenericVolume Arcane::Numerics::Euclidian3Geometry::ComputeHemiHexa6

Definition at line 226 of file Euclidian3Geometry.h.

◆ ComputeHemiHexa7

typedef ComputeGenericVolume Arcane::Numerics::Euclidian3Geometry::ComputeHemiHexa7

Definition at line 225 of file Euclidian3Geometry.h.

◆ ComputeHexaedron8

typedef ComputeGenericVolume Arcane::Numerics::Euclidian3Geometry::ComputeHexaedron8

Definition at line 224 of file Euclidian3Geometry.h.

◆ ComputePentaedron6

typedef ComputeGenericVolume Arcane::Numerics::Euclidian3Geometry::ComputePentaedron6

Definition at line 223 of file Euclidian3Geometry.h.

◆ ComputePyramid5

typedef ComputeGenericVolume Arcane::Numerics::Euclidian3Geometry::ComputePyramid5

Definition at line 222 of file Euclidian3Geometry.h.

Constructor & Destructor Documentation

◆ Euclidian3Geometry()

Arcane::Numerics::Euclidian3Geometry::Euclidian3Geometry ( const VariableNodeReal3 & coords)
inline

Definition at line 37 of file Euclidian3Geometry.h.

◆ ~Euclidian3Geometry()

virtual Arcane::Numerics::Euclidian3Geometry::~Euclidian3Geometry ( )
inlinevirtual

Definition at line 41 of file Euclidian3Geometry.h.

Member Function Documentation

◆ computeArea()

Real Arcane::Numerics::Euclidian3Geometry::computeArea ( const ItemWithNodes & item)
virtual

Calculation of the area.

Only for surface items

Implements Arcane::Numerics::IGeometry.

Definition at line 165 of file Euclidian3Geometry.cc.

References Arcane::math::normeR3(), and Arcane::Item::type().

Here is the call graph for this function:

◆ computeCenter()

Real3 Arcane::Numerics::Euclidian3Geometry::computeCenter ( const ItemWithNodes & item)
virtual

Calculation of the center of mass.

Implements Arcane::Numerics::IGeometry.

Definition at line 24 of file Euclidian3Geometry.cc.

References Arcane::Item::type().

Here is the call graph for this function:

◆ computeHexagonalCenter()

Real3 Arcane::Numerics::Euclidian3Geometry::computeHexagonalCenter ( const Real3 & n0,
const Real3 & n1,
const Real3 & n2,
const Real3 & n3,
const Real3 & n4,
const Real3 & n5 )
inlinestatic

Definition at line 294 of file Euclidian3Geometry.h.

◆ computeLength() [1/2]

Real Arcane::Numerics::Euclidian3Geometry::computeLength ( const ItemWithNodes & item)
virtual

Calculation of the length.

Only for linear items

Implements Arcane::Numerics::IGeometry.

Definition at line 158 of file Euclidian3Geometry.cc.

References ARCANE_THROW.

◆ computeLength() [2/2]

Real Arcane::Numerics::Euclidian3Geometry::computeLength ( const Real3 & m,
const Real3 & n )
virtual

Calculation of the length of a segment defined by two points.

Implements Arcane::Numerics::IGeometry.

Definition at line 284 of file Euclidian3Geometry.cc.

References Arcane::math::scaMul(), and Arcane::math::sqrt().

Here is the call graph for this function:

◆ computeMeasure()

Real Arcane::Numerics::Euclidian3Geometry::computeMeasure ( const ItemWithNodes & item)
virtual

Calculation of the measure (without orientation).

Implements Arcane::Numerics::IGeometry.

Definition at line 113 of file Euclidian3Geometry.cc.

References ARCANE_THROW, Arcane::math::normeR3(), and Arcane::Item::type().

Here is the call graph for this function:

◆ computeOrientedArea()

Real3 Arcane::Numerics::Euclidian3Geometry::computeOrientedArea ( Integer n,
const Real3 * coords )
virtual

Calculation of the oriented area (i.e., normal).

Implements Arcane::Numerics::IGeometry.

Definition at line 275 of file Euclidian3Geometry.cc.

◆ computeOrientedMeasure()

Real3 Arcane::Numerics::Euclidian3Geometry::computeOrientedMeasure ( const ItemWithNodes & item)
virtual

Calculation of the oriented measure.

In the case of a planar element, this corresponds to the unit average normal * measure of the element and in the case of a simple volumetric element we obtain volume * z (or z=(0,0,1))

Implements Arcane::Numerics::IGeometry.

Definition at line 69 of file Euclidian3Geometry.cc.

References Arcane::Item::type().

Here is the call graph for this function:

◆ computePentagonalCenter()

Real3 Arcane::Numerics::Euclidian3Geometry::computePentagonalCenter ( const Real3 & n0,
const Real3 & n1,
const Real3 & n2,
const Real3 & n3,
const Real3 & n4 )
inlinestatic

Definition at line 272 of file Euclidian3Geometry.h.

◆ computeQuadrilateralCenter()

Real3 Arcane::Numerics::Euclidian3Geometry::computeQuadrilateralCenter ( const Real3 & n0,
const Real3 & n1,
const Real3 & n2,
const Real3 & n3 )
inlinestatic

Definition at line 259 of file Euclidian3Geometry.h.

◆ computeSurfaceCenter()

Real3 Arcane::Numerics::Euclidian3Geometry::computeSurfaceCenter ( Integer n,
const Real3 * coords )
virtual

Calculation of the center.

Implements Arcane::Numerics::IGeometry.

Definition at line 259 of file Euclidian3Geometry.cc.

References Arcane::math::normeR3().

Here is the call graph for this function:

◆ computeTetraedronCenter()

Real3 Arcane::Numerics::Euclidian3Geometry::computeTetraedronCenter ( const Real3 & n0,
const Real3 & n1,
const Real3 & n2,
const Real3 & n3 )
inlinestatic

Definition at line 254 of file Euclidian3Geometry.h.

◆ computeTetraedronVolume()

Real Arcane::Numerics::Euclidian3Geometry::computeTetraedronVolume ( const Real3 & n0,
const Real3 & n1,
const Real3 & n2,
const Real3 & n3 )
inlinestatic

Definition at line 249 of file Euclidian3Geometry.h.

◆ computeTriangleCenter()

Real3 Arcane::Numerics::Euclidian3Geometry::computeTriangleCenter ( const Real3 & n0,
const Real3 & n1,
const Real3 & n2 )
inlinestatic

Definition at line 244 of file Euclidian3Geometry.h.

◆ computeTriangleNormal()

Real3 Arcane::Numerics::Euclidian3Geometry::computeTriangleNormal ( const Real3 & n0,
const Real3 & n1,
const Real3 & n2 )
inlinestatic

Definition at line 234 of file Euclidian3Geometry.h.

◆ computeTriangleSurface()

Real Arcane::Numerics::Euclidian3Geometry::computeTriangleSurface ( const Real3 & n0,
const Real3 & n1,
const Real3 & n2 )
inlinestatic

Definition at line 239 of file Euclidian3Geometry.h.

◆ computeVolume()

Real Arcane::Numerics::Euclidian3Geometry::computeVolume ( const ItemWithNodes & item)
virtual

Calculation of the volume.

Only for volumetric items

Implements Arcane::Numerics::IGeometry.

Definition at line 203 of file Euclidian3Geometry.cc.

References Arcane::Item::type().

Here is the call graph for this function:

Member Data Documentation

◆ m_coords

const VariableNodeReal3& Arcane::Numerics::Euclidian3Geometry::m_coords
protected

Definition at line 319 of file Euclidian3Geometry.h.


The documentation for this class was generated from the following files: