14 #if !defined(KRATOS_INTEGRATION_POINT_H_INCLUDED )
15 #define KRATOS_INTEGRATION_POINT_H_INCLUDED
50 template<std::
size_t TDimension,
class TDataType =
double,
class TWeightType =
double>
93 IntegrationPoint(TDataType
const& NewX, TDataType
const& NewY, TDataType
const& NewZ, TDataType
const& NewW) :
BaseType(NewX, NewY, NewZ), mWeight(NewW)
100 :
BaseType(rOtherIntegrationPoint), mWeight(rOtherIntegrationPoint.mWeight) {}
105 template<std::
size_t TOtherDimension>
107 :
BaseType(rOtherIntegrationPoint), mWeight(rOtherIntegrationPoint.mWeight) {}
112 :
BaseType(rOtherPoint), mWeight() {}
117 :
BaseType(rOtherPoint), mWeight(NewWeight) {}
122 :
BaseType(rOtherCoordinates), mWeight() {}
127 :
BaseType(rOtherCoordinates), mWeight(NewWeight) {}
131 template<
class TVectorType>
133 :
BaseType(rOtherCoordinates), mWeight() {}
137 template<
class TVectorType>
139 :
BaseType(rOtherCoordinates), mWeight(NewWeight) {}
144 :
BaseType(rOtherCoordinates), mWeight() {}
149 :
BaseType(rOtherCoordinates), mWeight(NewWeight) {}
163 mWeight = rOther.mWeight;
182 template<std::
size_t TOtherDimension>
186 mWeight = rOther.
Weight();
225 std::string
Info()
const override
227 std::stringstream buffer;
228 buffer << TDimension <<
" dimensional integration point";
235 rOStream << TDimension <<
" dimensional integration point";
246 for(IndexType
i = 1 ;
i < TDimension ;
i++)
247 rOStream <<
" , " << this->
operator[](
i);
249 rOStream <<
"), weight = " << mWeight;
258 template<std::
size_t TOtherDimension,
class TOtherDataType,
class TOtherWeightType>
friend class IntegrationPoint;
316 void save(
Serializer& rSerializer )
const override
319 rSerializer.
save(
"Weight", mWeight);
326 rSerializer.
load(
"Weight", mWeight);
369 template<std::
size_t TDimension,
class TDataType,
class TWeightType>
374 template<std::
size_t TDimension,
class TDataType,
class TWeightType>
Short class definition.
Definition: integration_point.h:52
IntegrationPoint & operator=(const IntegrationPoint< TOtherDimension > &rOther)
Assignment operator with different dimension.
Definition: integration_point.h:183
IntegrationPoint(vector_expression< TVectorType > const &rOtherCoordinates, TWeightType NewWeight)
Definition: integration_point.h:138
IntegrationPoint(IntegrationPoint const &rOtherIntegrationPoint)
Definition: integration_point.h:99
IntegrationPoint(TDataType const &NewX, TDataType const &NewY, TDataType const &NewW)
2d constructor.
Definition: integration_point.h:88
void PrintInfo(std::ostream &rOStream) const override
Print information about this object.
Definition: integration_point.h:233
IntegrationPoint(TDataType const &NewX)
1d constructor.
Definition: integration_point.h:78
IntegrationPoint(TDataType const &NewX, TDataType const &NewY, TDataType const &NewZ, TDataType const &NewW)
3d constructor
Definition: integration_point.h:93
IntegrationPoint & operator=(const IntegrationPoint &rOther)
Assignment operator.
Definition: integration_point.h:160
std::string Info() const override
Turn back information as a string.
Definition: integration_point.h:225
void SetWeight(TWeightType NewWeight)
Definition: integration_point.h:210
IntegrationPoint(TDataType const &NewX, TDataType const &NewW)
1d constructor.
Definition: integration_point.h:83
IntegrationPoint & operator=(const PointType &OtherPoint)
Point assignment operator.
Definition: integration_point.h:169
Point PointType
Definition: integration_point.h:62
IntegrationPoint(vector_expression< TVectorType > const &rOtherCoordinates)
Definition: integration_point.h:132
bool operator==(const IntegrationPoint &rOther)
Definition: integration_point.h:176
IntegrationPoint(PointType const &rOtherPoint)
Definition: integration_point.h:111
KRATOS_CLASS_POINTER_DEFINITION(IntegrationPoint)
Pointer definition of IntegrationPoint.
TWeightType & Weight()
Definition: integration_point.h:205
IntegrationPoint(IntegrationPoint< TOtherDimension, TDataType, TWeightType > const &rOtherIntegrationPoint)
Definition: integration_point.h:106
IntegrationPoint(std::vector< TDataType > const &rOtherCoordinates, TWeightType NewWeight)
Definition: integration_point.h:148
IntegrationPoint()
Default constructor.
Definition: integration_point.h:73
Point::IndexType IndexType
Definition: integration_point.h:66
Point::CoordinatesArrayType CoordinatesArrayType
Definition: integration_point.h:64
IntegrationPoint(CoordinatesArrayType const &rOtherCoordinates)
Definition: integration_point.h:121
TWeightType Weight() const
Definition: integration_point.h:200
void PrintData(std::ostream &rOStream) const override
Print object's data.
Definition: integration_point.h:239
Point BaseType
Definition: integration_point.h:60
IntegrationPoint(std::vector< TDataType > const &rOtherCoordinates)
Definition: integration_point.h:143
~IntegrationPoint() override
Destructor.
Definition: integration_point.h:152
IntegrationPoint(PointType const &rOtherPoint, TWeightType NewWeight)
Definition: integration_point.h:116
IntegrationPoint(CoordinatesArrayType const &rOtherCoordinates, TWeightType NewWeight)
Definition: integration_point.h:126
Point class.
Definition: point.h:59
std::size_t IndexType
Definition: point.h:79
bool operator==(const Point &rOther) const
Definition: point.h:139
Point & operator=(const Point &rOther)
Assignment operator.
Definition: point.h:133
The serialization consists in storing the state of an object into a storage format like data file or ...
Definition: serializer.h:123
void load(std::string const &rTag, TDataType &rObject)
Definition: serializer.h:207
void save(std::string const &rTag, std::array< TDataType, TDataSize > const &rObject)
Definition: serializer.h:545
Short class definition.
Definition: array_1d.h:61
BOOST_UBLAS_INLINE const_reference operator[](size_type i) const
Definition: array_1d.h:173
#define KRATOS_SERIALIZE_SAVE_BASE_CLASS(Serializer, BaseType)
Definition: define.h:812
#define KRATOS_SERIALIZE_LOAD_BASE_CLASS(Serializer, BaseType)
Definition: define.h:815
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
std::istream & operator>>(std::istream &rIStream, LinearMasterSlaveConstraint &rThis)
input stream function
AMatrix::MatrixExpression< TExpressionType, AMatrix::row_major_access > vector_expression
Definition: amatrix_interface.h:490
std::ostream & operator<<(std::ostream &rOStream, const LinearMasterSlaveConstraint &rThis)
output stream function
Definition: linear_master_slave_constraint.h:432
def load(f)
Definition: ode_solve.py:307
integer i
Definition: TensorModule.f:17