13 #if !defined(KRATOS_QUADRILATERAL_INTERFACE_3D_4_H_INCLUDED )
14 #define KRATOS_QUADRILATERAL_INTERFACE_3D_4_H_INCLUDED
227 typename PointType::Pointer pSecondPoint,
228 typename PointType::Pointer pThirdPoint,
229 typename PointType::Pointer pFourthPoint )
233 noalias(vx) = (*pSecondPoint + *pThirdPoint - *pFirstPoint - *pFourthPoint)*0.5;
236 noalias(vy) = (*pThirdPoint + *pFourthPoint - *pFirstPoint - *pSecondPoint)*0.5;
258 :
BaseType( ThisPoints, &msGeometryData )
342 template<
class TOtherPo
intType>
366 rResult( 0, 0 ) = -1.0;
367 rResult( 0, 1 ) = -1.0;
368 rResult( 1, 0 ) = 1.0;
369 rResult( 1, 1 ) = -1.0;
370 rResult( 2, 0 ) = 1.0;
371 rResult( 2, 1 ) = 1.0;
372 rResult( 3, 0 ) = -1.0;
373 rResult( 3, 1 ) = 1.0;
458 KRATOS_WARNING(
"QuadrilateralInterface3D4") <<
"Method not well defined. Replace with DomainSize() instead. This method preserves current behaviour but will be changed in June 2023 (returning error instead)" << std::endl;
476 const double Tolerance = std::numeric_limits<double>::epsilon()
481 if ( (rResult[0] >= (-1.0 - Tolerance)) && (rResult[0] <= (1.0 + Tolerance)) )
483 if ( (rResult[1] >= (-1.0 - Tolerance)) && (rResult[1] <= (1.0 + Tolerance)) )
505 for(
unsigned int i=0;
i<this->
size();
i++) {
524 for (
int k = 0;
k < maxiter;
k++ )
529 noalias( CurrentGlobalCoords ) = rPoint - CurrentGlobalCoords;
533 Matrix shape_functions_gradients;
541 const double det_j =
J( 0, 0 ) *
J( 1, 1 ) -
J( 0, 1 ) *
J( 1, 0 );
544 invJ( 0, 0 ) = (
J( 1, 1 ) ) / ( det_j );
545 invJ( 1, 0 ) = -(
J( 1, 0 ) ) / ( det_j );
546 invJ( 0, 1 ) = -(
J( 0, 1 ) ) / ( det_j );
547 invJ( 1, 1 ) = (
J( 0, 0 ) ) / ( det_j );
550 DeltaXi( 0 ) = invJ( 0, 0 ) *
res[0] + invJ( 0, 1 ) *
res[1];
551 DeltaXi( 1 ) = invJ( 1, 0 ) *
res[0] + invJ( 1, 1 ) *
res[1];
553 rResult[0] += DeltaXi[0];
554 rResult[1] += DeltaXi[1];
557 if (
norm_2( DeltaXi ) > 300 )
561 std::cout <<
"detJ =" << det_j <<
"DeltaX = " << DeltaXi <<
" stopping calculation and assigning the baricenter" << std::endl;
595 Matrix & DeltaPosition )
const override
602 dp0[0] = (DeltaPosition(0,0) + DeltaPosition(3,0))*0.5;
603 dp0[1] = (DeltaPosition(0,1) + DeltaPosition(3,1))*0.5;
604 dp0[2] = (DeltaPosition(0,2) + DeltaPosition(3,2))*0.5;
605 dp1[0] = (DeltaPosition(1,0) + DeltaPosition(2,0))*0.5;
606 dp1[1] = (DeltaPosition(1,1) + DeltaPosition(2,1))*0.5;
607 dp1[2] = (DeltaPosition(1,2) + DeltaPosition(2,2))*0.5;
610 jacobian( 0, 0 ) = ( p1[0]-dp1[0] - (p0[0]-dp0[0]) ) * 0.5;
611 jacobian( 1, 0 ) = ( p1[1]-dp1[1] - (p0[1]-dp0[1]) ) * 0.5;
612 jacobian( 2, 0 ) = ( p1[2]-dp1[2] - (p0[2]-dp0[2]) ) * 0.5;
621 std::fill( rResult.
begin(), rResult.
end(), jacobian );
653 if(rResult.size1() != 3 || rResult.size2() != 1)
654 rResult.
resize(3, 1,
false);
656 rResult( 0, 0 ) = ( p1[0] - p0[0] ) * 0.5;
657 rResult( 1, 0 ) = ( p1[1] - p0[1] ) * 0.5;
658 rResult( 2, 0 ) = ( p1[2] - p0[2] ) * 0.5;
683 if(rResult.size1() != 3 || rResult.size2() != 1)
684 rResult.
resize(3, 1,
false);
686 rResult( 0, 0 ) = ( p1[0] - p0[0] ) * 0.5;
687 rResult( 1, 0 ) = ( p1[1] - p0[1] ) * 0.5;
688 rResult( 2, 0 ) = ( p1[2] - p0[2] ) * 0.5;
711 KRATOS_ERROR <<
"QuadrilateralInterface3D4::DeterminantOfJacobian" <<
"Jacobian is not square" << std::endl;
740 KRATOS_ERROR <<
"QuadrilateralInterface3D4::DeterminantOfJacobian" <<
"Jacobian is not square" << std::endl;
771 KRATOS_ERROR <<
"QuadrilateralInterface3D4::DeterminantOfJacobian" <<
"Jacobian is not square" << std::endl;
799 KRATOS_ERROR <<
"QuadrilateralInterface3D4::DeterminantOfJacobian" <<
"Jacobian is not square" << std::endl;
830 KRATOS_ERROR <<
"QuadrilateralInterface3D4::DeterminantOfJacobian" <<
"Jacobian is not square" << std::endl;
853 KRATOS_ERROR <<
"QuadrilateralInterface3D4::DeterminantOfJacobian" <<
"Jacobian is not square" << std::endl;
916 switch ( ShapeFunctionIndex )
919 return( 0.25*( 1.0 - rPoint[0] )*( 1.0 - rPoint[1] ) );
921 return( 0.25*( 1.0 + rPoint[0] )*( 1.0 - rPoint[1] ) );
923 return( 0.25*( 1.0 + rPoint[0] )*( 1.0 + rPoint[1] ) );
925 return( 0.25*( 1.0 - rPoint[0] )*( 1.0 + rPoint[1] ) );
927 KRATOS_ERROR <<
"Wrong index of shape function!" << *
this << std::endl;
946 if(rResult.size() != 4) rResult.
resize(4,
false);
947 rResult[0] = 0.25*( 1.0 - rCoordinates[0] )*( 1.0 - rCoordinates[1] );
948 rResult[1] = 0.25*( 1.0 + rCoordinates[0] )*( 1.0 - rCoordinates[1] );
949 rResult[2] = 0.25*( 1.0 + rCoordinates[0] )*( 1.0 + rCoordinates[1] );
950 rResult[3] = 0.25*( 1.0 - rCoordinates[0] )*( 1.0 + rCoordinates[1] );
975 const unsigned int integration_points_number =
978 if ( integration_points_number == 0 )
979 KRATOS_ERROR <<
"This integration method is not supported" << *
this << std::endl;
982 if ( rResult.size() != integration_points_number )
992 CalculateShapeFunctionsIntegrationPointsLocalGradients( ThisMethod );
1000 for (
unsigned int pnt = 0; pnt < integration_points_number; pnt++ )
1002 rResult[pnt].
resize( 4, 2,
false );
1004 for (
int i = 0;
i < 4;
i++ )
1006 for (
int j = 0;
j < 2;
j++ )
1008 rResult[pnt](
i,
j ) =
1009 ( locG[pnt](
i, 0 ) * invJ[pnt](
j, 0 ) )
1010 + ( locG[pnt](
i, 1 ) * invJ[pnt](
j, 1 ) );
1029 return "3 dimensional quadrilateral with four nodes in 3D space";
1040 rOStream <<
"3 dimensional quadrilateral with four nodes in 3D space";
1061 std::cout << std::endl;
1067 rOStream <<
" Jacobian in the origin\t : " << jacobian;
1083 rResult.
resize( 4, 2,
false );
1085 rResult( 0, 0 ) = -0.25 * ( 1.0 - rPoint[1] );
1086 rResult( 0, 1 ) = -0.25 * ( 1.0 - rPoint[0] );
1087 rResult( 1, 0 ) = 0.25 * ( 1.0 - rPoint[1] );
1088 rResult( 1, 1 ) = -0.25 * ( 1.0 + rPoint[0] );
1089 rResult( 2, 0 ) = 0.25 * ( 1.0 + rPoint[1] );
1090 rResult( 2, 1 ) = 0.25 * ( 1.0 + rPoint[0] );
1091 rResult( 3, 0 ) = -0.25 * ( 1.0 + rPoint[1] );
1092 rResult( 3, 1 ) = 0.25 * ( 1.0 - rPoint[0] );
1105 if ( rResult.size() != this->PointsNumber() )
1113 rResult[0].
resize( 2, 2,
false );
1115 rResult[1].
resize( 2, 2,
false );
1116 rResult[2].
resize( 2, 2,
false );
1117 rResult[3].
resize( 2, 2,
false );
1118 rResult[0]( 0, 0 ) = 0.0;
1119 rResult[0]( 0, 1 ) = 0.25;
1120 rResult[0]( 1, 0 ) = 0.25;
1121 rResult[0]( 1, 1 ) = 0.0;
1122 rResult[1]( 0, 0 ) = 0.0;
1123 rResult[1]( 0, 1 ) = -0.25;
1124 rResult[1]( 1, 0 ) = -0.25;
1125 rResult[1]( 1, 1 ) = 0.0;
1126 rResult[2]( 0, 0 ) = 0.0;
1127 rResult[2]( 0, 1 ) = 0.25;
1128 rResult[2]( 1, 0 ) = 0.25;
1129 rResult[2]( 1, 1 ) = 0.0;
1130 rResult[3]( 0, 0 ) = 0.0;
1131 rResult[3]( 0, 1 ) = -0.25;
1132 rResult[3]( 1, 0 ) = -0.25;
1133 rResult[3]( 1, 1 ) = 0.0;
1146 if ( rResult.size() != this->PointsNumber() )
1161 rResult[0][0].
resize( 2, 2 ,
false);
1163 rResult[0][1].
resize( 2, 2 ,
false);
1164 rResult[1][0].
resize( 2, 2 ,
false);
1165 rResult[1][1].
resize( 2, 2 ,
false);
1166 rResult[2][0].
resize( 2, 2 ,
false);
1167 rResult[2][1].
resize( 2, 2 ,
false);
1168 rResult[3][0].
resize( 2, 2 ,
false);
1169 rResult[3][1].
resize( 2, 2 ,
false);
1171 for (
int i = 0;
i < 4;
i++ )
1174 rResult[
i][0]( 0, 0 ) = 0.0;
1175 rResult[
i][0]( 0, 1 ) = 0.0;
1176 rResult[
i][0]( 1, 0 ) = 0.0;
1177 rResult[
i][0]( 1, 1 ) = 0.0;
1178 rResult[
i][1]( 0, 0 ) = 0.0;
1179 rResult[
i][1]( 0, 1 ) = 0.0;
1180 rResult[
i][1]( 1, 0 ) = 0.0;
1181 rResult[
i][1]( 1, 1 ) = 0.0;
1212 void save(
Serializer& rSerializer )
const override
1248 static Matrix CalculateShapeFunctionsIntegrationPointsValues(
1252 AllIntegrationPoints();
1255 const int integration_points_number = integration_points.size();
1257 const int points_number = 4;
1259 Matrix shape_function_values( integration_points_number, points_number );
1262 for (
int pnt = 0; pnt < integration_points_number; pnt++ )
1264 shape_function_values( pnt, 0 ) =
1265 0.25 * ( 1.0 - integration_points[pnt].X() )
1266 * ( 1.0 - integration_points[pnt].
Y() );
1267 shape_function_values( pnt, 1 ) =
1268 0.25 * ( 1.0 + integration_points[pnt].X() )
1269 * ( 1.0 - integration_points[pnt].
Y() );
1270 shape_function_values( pnt, 2 ) =
1271 0.25 * ( 1.0 + integration_points[pnt].X() )
1272 * ( 1.0 + integration_points[pnt].
Y() );
1273 shape_function_values( pnt, 3 ) =
1274 0.25 * ( 1.0 - integration_points[pnt].X() )
1275 * ( 1.0 + integration_points[pnt].
Y() );
1278 return shape_function_values;
1297 AllIntegrationPoints();
1300 const int integration_points_number = integration_points.size();
1306 for (
int pnt = 0; pnt < integration_points_number; pnt++ )
1309 result( 0, 0 ) = -0.25 * ( 1.0 - integration_points[pnt].Y() );
1310 result( 0, 1 ) = -0.25 * ( 1.0 - integration_points[pnt].X() );
1311 result( 1, 0 ) = 0.25 * ( 1.0 - integration_points[pnt].Y() );
1312 result( 1, 1 ) = -0.25 * ( 1.0 + integration_points[pnt].X() );
1313 result( 2, 0 ) = 0.25 * ( 1.0 + integration_points[pnt].Y() );
1314 result( 2, 1 ) = 0.25 * ( 1.0 + integration_points[pnt].X() );
1315 result( 3, 0 ) = -0.25 * ( 1.0 + integration_points[pnt].Y() );
1316 result( 3, 1 ) = 0.25 * ( 1.0 - integration_points[pnt].X() );
1317 d_shape_f_values[pnt] = result;
1320 return d_shape_f_values;
1331 Quadrature < QuadrilateralGaussLobattoIntegrationPoints1,
1332 2, IntegrationPoint<3> >::GenerateIntegrationPoints(),
1333 Quadrature < QuadrilateralGaussLobattoIntegrationPoints2,
1334 2, IntegrationPoint<3> >::GenerateIntegrationPoints(),
1339 return integration_points;
1350 QuadrilateralInterface3D4<TPointType>::CalculateShapeFunctionsIntegrationPointsValues(
1352 QuadrilateralInterface3D4<TPointType>::CalculateShapeFunctionsIntegrationPointsValues(
1358 return shape_functions_values;
1365 AllShapeFunctionsLocalGradients()
1376 return shape_functions_local_gradients;
1415 std::istream& rIStream,
1421 std::ostream& rOStream,
1425 rOStream << std::endl;
1432 template<
class TPo
intType>
const
1433 GeometryData QuadrilateralInterface3D4<TPointType>::msGeometryData(
1436 QuadrilateralInterface3D4<TPointType>::AllIntegrationPoints(),
1437 QuadrilateralInterface3D4<TPointType>::AllShapeFunctionsValues(),
1438 AllShapeFunctionsLocalGradients()
1441 template<
class TPo
intType>
Definition: geometry_data.h:60
KratosGeometryType
Definition: geometry_data.h:110
@ Kratos_Quadrilateral3D4
SizeType IntegrationPointsNumber() const
Definition: geometry_data.h:430
IntegrationMethod
Definition: geometry_data.h:76
KratosGeometryFamily
Definition: geometry_data.h:91
Definition: geometry_dimension.h:42
Geometry base class.
Definition: geometry.h:71
SizeType PointsNumber() const
Definition: geometry.h:528
virtual void PrintData(std::ostream &rOStream) const
Print object's data.
Definition: geometry.h:3834
SizeType size() const
Definition: geometry.h:518
Geometry & operator=(const Geometry &rOther)
Definition: geometry.h:400
virtual CoordinatesArrayType & GlobalCoordinates(CoordinatesArrayType &rResult, CoordinatesArrayType const &LocalCoordinates) const
Definition: geometry.h:2377
std::vector< IntegrationPointType > IntegrationPointsArrayType
Definition: geometry.h:161
std::size_t SizeType
Definition: geometry.h:144
const TPointType::Pointer pGetPoint(const int Index) const
Definition: geometry.h:1790
std::size_t IndexType
Definition: geometry.h:137
std::array< Matrix, static_cast< int >GeometryData::IntegrationMethod::NumberOfIntegrationMethods)> ShapeFunctionsValuesContainerType
Definition: geometry.h:172
const PointsArrayType & Points() const
Definition: geometry.h:1768
bool AllPointsAreValid() const
Checks if the geometry points are valid Checks if the geometry points are valid from the pointer valu...
Definition: geometry.h:4093
std::array< IntegrationPointsArrayType, static_cast< int >GeometryData::IntegrationMethod::NumberOfIntegrationMethods)> IntegrationPointsContainerType
Definition: geometry.h:167
const ShapeFunctionsGradientsType & ShapeFunctionsLocalGradients() const
Definition: geometry.h:3539
TPointType const & GetPoint(const int Index) const
Definition: geometry.h:1816
GeometryData::ShapeFunctionsLocalGradientsContainerType ShapeFunctionsLocalGradientsContainerType
Definition: geometry.h:177
SizeType IntegrationPointsNumber() const
Definition: geometry.h:2257
GeometryData::IntegrationMethod IntegrationMethod
Definition: geometry.h:122
Short class definition.
Definition: integration_point.h:52
Definition: amatrix_interface.h:41
void swap(Matrix &Other)
Definition: amatrix_interface.h:289
void resize(std::size_t NewSize1, std::size_t NewSize2, bool preserve=0)
Definition: amatrix_interface.h:224
iterator end()
Definition: amatrix_interface.h:243
iterator begin()
Definition: amatrix_interface.h:241
An two node 3D line geometry with linear shape functions.
Definition: line_3d_2.h:64
static double Norm3(const TVectorType &a)
Calculates the norm of vector "a" which is assumed to be of size 3.
Definition: math_utils.h:691
PointerVector is a container like stl vector but using a vector to store pointers to its data.
Definition: pointer_vector.h:72
void push_back(const TPointerType &x)
Definition: pointer_vector.h:270
Definition: quadrilateral_interface_3d_4.h:54
CoordinatesArrayType & PointLocalCoordinates(CoordinatesArrayType &rResult, const CoordinatesArrayType &rPoint) const override
Returns the local coordinates of a given arbitrary point.
Definition: quadrilateral_interface_3d_4.h:498
BaseType::ShapeFunctionsSecondDerivativesType ShapeFunctionsSecondDerivativesType
Definition: quadrilateral_interface_3d_4.h:171
void ShapeFunctionsIntegrationPointsGradients(ShapeFunctionsGradientsType &rResult, IntegrationMethod ThisMethod) const override
Definition: quadrilateral_interface_3d_4.h:971
BaseType::ShapeFunctionsGradientsType ShapeFunctionsGradientsType
Definition: quadrilateral_interface_3d_4.h:163
Geometry< TPointType > BaseType
Definition: quadrilateral_interface_3d_4.h:63
double DomainSize() const override
Definition: quadrilateral_interface_3d_4.h:444
double ShapeFunctionValue(IndexType ShapeFunctionIndex, const CoordinatesArrayType &rPoint) const override
Definition: quadrilateral_interface_3d_4.h:913
BaseType::ShapeFunctionsLocalGradientsContainerType ShapeFunctionsLocalGradientsContainerType
Definition: quadrilateral_interface_3d_4.h:149
double DeterminantOfJacobian(IndexType IntegrationPointIndex, IntegrationMethod ThisMethod) const override
Definition: quadrilateral_interface_3d_4.h:737
GeometryData::KratosGeometryFamily GetGeometryFamily() const override
Definition: quadrilateral_interface_3d_4.h:300
void PrintInfo(std::ostream &rOStream) const override
Definition: quadrilateral_interface_3d_4.h:1038
virtual ~QuadrilateralInterface3D4()
Definition: quadrilateral_interface_3d_4.h:298
BaseType::IndexType IndexType
Definition: quadrilateral_interface_3d_4.h:97
QuadrilateralInterface3D4 & operator=(const QuadrilateralInterface3D4 &rOther)
Definition: quadrilateral_interface_3d_4.h:325
SizeType EdgesNumber() const override
This method gives you number of all edges of this geometry.
Definition: quadrilateral_interface_3d_4.h:873
QuadrilateralInterface3D4(QuadrilateralInterface3D4< TOtherPointType > const &rOther)
Definition: quadrilateral_interface_3d_4.h:290
JacobiansType & Jacobian(JacobiansType &rResult, IntegrationMethod ThisMethod, Matrix &DeltaPosition) const override
Definition: quadrilateral_interface_3d_4.h:593
QuadrilateralInterface3D4(QuadrilateralInterface3D4 const &rOther)
Definition: quadrilateral_interface_3d_4.h:273
BaseType::IntegrationPointsArrayType IntegrationPointsArrayType
Definition: quadrilateral_interface_3d_4.h:130
QuadrilateralInterface3D4(const PointsArrayType &ThisPoints)
Definition: quadrilateral_interface_3d_4.h:257
GeometriesArrayType GenerateEdges() const override
This method gives you all edges of this geometry.
Definition: quadrilateral_interface_3d_4.h:886
Matrix & ShapeFunctionsLocalGradients(Matrix &rResult, const CoordinatesArrayType &rPoint) const override
Definition: quadrilateral_interface_3d_4.h:1080
BaseType::IntegrationPointsContainerType IntegrationPointsContainerType
Definition: quadrilateral_interface_3d_4.h:137
BaseType::JacobiansType JacobiansType
Definition: quadrilateral_interface_3d_4.h:156
Matrix & InverseOfJacobian(Matrix &rResult, IndexType IntegrationPointIndex, IntegrationMethod ThisMethod) const override
Definition: quadrilateral_interface_3d_4.h:826
Matrix & InverseOfJacobian(Matrix &rResult, const CoordinatesArrayType &rPoint) const override
Definition: quadrilateral_interface_3d_4.h:850
QuadrilateralInterface3D4 & operator=(QuadrilateralInterface3D4< TOtherPointType > const &rOther)
Definition: quadrilateral_interface_3d_4.h:343
Vector & DeterminantOfJacobian(Vector &rResult, IntegrationMethod ThisMethod) const override
Definition: quadrilateral_interface_3d_4.h:708
BaseType::IntegrationPointType IntegrationPointType
Definition: quadrilateral_interface_3d_4.h:121
double DeterminantOfJacobian(const CoordinatesArrayType &rPoint) const override
Definition: quadrilateral_interface_3d_4.h:769
double Volume() const override
This method calculates and returns the volume of this geometry.
Definition: quadrilateral_interface_3d_4.h:456
BaseType::NormalType NormalType
Definition: quadrilateral_interface_3d_4.h:184
Matrix & PointsLocalCoordinates(Matrix &rResult) const override
Definition: quadrilateral_interface_3d_4.h:363
friend class QuadrilateralInterface3D4
Definition: quadrilateral_interface_3d_4.h:1393
KRATOS_CLASS_POINTER_DEFINITION(QuadrilateralInterface3D4)
BaseType::CoordinatesArrayType CoordinatesArrayType
Definition: quadrilateral_interface_3d_4.h:115
JacobiansType & InverseOfJacobian(JacobiansType &rResult, IntegrationMethod ThisMethod) const override
Definition: quadrilateral_interface_3d_4.h:796
TPointType PointType
Definition: quadrilateral_interface_3d_4.h:89
BaseType::Pointer Create(PointsArrayType const &ThisPoints) const override
Creates a new geometry pointer.
Definition: quadrilateral_interface_3d_4.h:353
GeometryData::KratosGeometryType GetGeometryType() const override
Definition: quadrilateral_interface_3d_4.h:305
std::string Info() const override
Definition: quadrilateral_interface_3d_4.h:1027
GeometryData::IntegrationMethod IntegrationMethod
Definition: quadrilateral_interface_3d_4.h:78
BaseType::ShapeFunctionsThirdDerivativesType ShapeFunctionsThirdDerivativesType
Definition: quadrilateral_interface_3d_4.h:179
Matrix & Jacobian(Matrix &rResult, const CoordinatesArrayType &rPoint) const override
Definition: quadrilateral_interface_3d_4.h:678
BaseType::SizeType SizeType
Definition: quadrilateral_interface_3d_4.h:104
BaseType::GeometriesArrayType GeometriesArrayType
Definition: quadrilateral_interface_3d_4.h:84
bool IsInside(const CoordinatesArrayType &rPoint, CoordinatesArrayType &rResult, const double Tolerance=std::numeric_limits< double >::epsilon()) const override
Definition: quadrilateral_interface_3d_4.h:473
double Length() const override
Definition: quadrilateral_interface_3d_4.h:400
Line3D2< TPointType > EdgeType
Definition: quadrilateral_interface_3d_4.h:68
void PrintData(std::ostream &rOStream) const override
Definition: quadrilateral_interface_3d_4.h:1057
ShapeFunctionsThirdDerivativesType & ShapeFunctionsThirdDerivatives(ShapeFunctionsThirdDerivativesType &rResult, const CoordinatesArrayType &rPoint) const override
Definition: quadrilateral_interface_3d_4.h:1143
Matrix & Jacobian(Matrix &rResult, IndexType IntegrationPointIndex, IntegrationMethod ThisMethod) const override
Definition: quadrilateral_interface_3d_4.h:646
BaseType::ShapeFunctionsValuesContainerType ShapeFunctionsValuesContainerType
Definition: quadrilateral_interface_3d_4.h:143
Vector & ShapeFunctionsValues(Vector &rResult, const CoordinatesArrayType &rCoordinates) const override
Definition: quadrilateral_interface_3d_4.h:944
double Area() const override
Definition: quadrilateral_interface_3d_4.h:425
BaseType::PointsArrayType PointsArrayType
Definition: quadrilateral_interface_3d_4.h:110
ShapeFunctionsSecondDerivativesType & ShapeFunctionsSecondDerivatives(ShapeFunctionsSecondDerivativesType &rResult, const CoordinatesArrayType &rPoint) const override
Definition: quadrilateral_interface_3d_4.h:1102
QuadrilateralInterface3D4(typename PointType::Pointer pFirstPoint, typename PointType::Pointer pSecondPoint, typename PointType::Pointer pThirdPoint, typename PointType::Pointer pFourthPoint)
Definition: quadrilateral_interface_3d_4.h:226
The serialization consists in storing the state of an object into a storage format like data file or ...
Definition: serializer.h:123
Short class definition.
Definition: array_1d.h:61
#define KRATOS_SERIALIZE_SAVE_BASE_CLASS(Serializer, BaseType)
Definition: define.h:812
#define KRATOS_SERIALIZE_LOAD_BASE_CLASS(Serializer, BaseType)
Definition: define.h:815
#define KRATOS_ERROR
Definition: exception.h:161
#define KRATOS_WARNING(label)
Definition: logger.h:265
REF: G. R. Cowper, GAUSSIAN QUADRATURE FORMULAS FOR TRIANGLES.
Definition: mesh_condition.cpp:21
KratosZeroVector< double > ZeroVector
Definition: amatrix_interface.h:561
TExpressionType::data_type norm_2(AMatrix::MatrixExpression< TExpressionType, TCategory > const &TheExpression)
Definition: amatrix_interface.h:625
KratosZeroMatrix< double > ZeroMatrix
Definition: amatrix_interface.h:559
Internals::Matrix< double, AMatrix::dynamic, AMatrix::dynamic > Matrix
Definition: amatrix_interface.h:470
AMatrix::MatrixProductExpression< TExpression1Type, TExpression2Type > prod(AMatrix::MatrixExpression< TExpression1Type, TCategory1 > const &First, AMatrix::MatrixExpression< TExpression2Type, TCategory2 > const &Second)
Definition: amatrix_interface.h:568
std::istream & operator>>(std::istream &rIStream, LinearMasterSlaveConstraint &rThis)
input stream function
const GeometryData QuadrilateralInterface3D4< TPointType >::msGeometryData & msGeometryDimension(), QuadrilateralInterface3D4< TPointType >::AllShapeFunctionsValues(), AllShapeFunctionsLocalGradients()
Definition: brep_curve.h:483
const GeometryData BrepCurve< TContainerPointType, TContainerPointEmbeddedType >::msGeometryData & msGeometryDimension
Definition: brep_curve.h:483
T & noalias(T &TheMatrix)
Definition: amatrix_interface.h:484
AMatrix::TransposeMatrix< const T > trans(const T &TheMatrix)
Definition: amatrix_interface.h:486
std::ostream & operator<<(std::ostream &rOStream, const LinearMasterSlaveConstraint &rThis)
output stream function
Definition: linear_master_slave_constraint.h:432
res
Definition: generate_convection_diffusion_explicit_element.py:211
DN
Definition: generate_convection_diffusion_explicit_element.py:98
int tol
Definition: hinsberg_optimization.py:138
def load(f)
Definition: ode_solve.py:307
int k
Definition: quadrature.py:595
int j
Definition: quadrature.py:648
float temp
Definition: rotating_cone.py:85
J
Definition: sensitivityMatrix.py:58
integer i
Definition: TensorModule.f:17