51 #if !defined(KRATOS_MARK_CLOSE_NODES_PROCESS_INCLUDED )
52 #define KRATOS_MARK_CLOSE_NODES_PROCESS_INCLUDED
70 #include "custom_utilities/geometry_utilities2D.h"
104 class MarkCloseNodesProcess
147 for(ModelPart::NodesContainerType::iterator in = mr_model_part.
NodesBegin() ;
148 in != mr_model_part.
NodesEnd() ; ++in)
151 const double& X0 = in->X();
152 const double& Y0 = in->Y();
156 i != in->GetValue(NEIGHBOUR_NODES).end();
i++)
158 const double&
X1 =
i->X();
159 const double& Y1 =
i->Y();
160 const double& dist_sq = (
X1-X0)*(
X1-X0)+(Y1-Y0)*(Y1-Y0);
161 if (dist_sq<0.1*(
i->GetValue(NODAL_H))*(
i->GetValue(NODAL_H)) && in->GetId()>
i->GetId())
164 i->Is(TO_ERASE)=
true;
195 std::string
Info()
const override
197 return "MarkCloseNodesProcess";
203 rOStream <<
"MarkCloseNodesProcess";
313 inline std::istream&
operator >> (std::istream& rIStream,
314 MarkCloseNodesProcess& rThis);
317 inline std::ostream&
operator << (std::ostream& rOStream,
318 const MarkCloseNodesProcess& rThis)
320 rThis.PrintInfo(rOStream);
321 rOStream << std::endl;
322 rThis.PrintData(rOStream);
boost::indirect_iterator< typename TContainerType::iterator > iterator
Definition: global_pointers_vector.h:79
Short class definition.
Definition: mark_close_nodes_process.h:109
void PrintData(std::ostream &rOStream) const override
Print object's data.
Definition: mark_close_nodes_process.h:207
~MarkCloseNodesProcess() override
Destructor.
Definition: mark_close_nodes_process.h:125
void operator()()
Definition: mark_close_nodes_process.h:134
KRATOS_CLASS_POINTER_DEFINITION(MarkCloseNodesProcess)
Pointer definition of PushStructureProcess.
MarkCloseNodesProcess(ModelPart &model_part)
Default constructor.
Definition: mark_close_nodes_process.h:119
std::string Info() const override
Turn back information as a string.
Definition: mark_close_nodes_process.h:195
void PrintInfo(std::ostream &rOStream) const override
Print information about this object.
Definition: mark_close_nodes_process.h:201
void Execute() override
Execute method is used to execute the Process algorithms.
Definition: mark_close_nodes_process.h:144
This class aims to manage meshes for multi-physics simulations.
Definition: model_part.h:77
NodeIterator NodesBegin(IndexType ThisIndex=0)
Definition: model_part.h:487
NodeIterator NodesEnd(IndexType ThisIndex=0)
Definition: model_part.h:497
#define KRATOS_CATCH(MoreInfo)
Definition: define.h:110
#define KRATOS_WATCH(variable)
Definition: define.h:806
#define KRATOS_TRY
Definition: define.h:109
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
std::ostream & operator<<(std::ostream &rOStream, const LinearMasterSlaveConstraint &rThis)
output stream function
Definition: linear_master_slave_constraint.h:432
model_part
Definition: face_heat.py:14
X1
Definition: generate_frictional_mortar_condition.py:119
integer i
Definition: TensorModule.f:17