KratosMultiphysics
KRATOS Multiphysics (Kratos) is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface.
Public Member Functions | Public Attributes | Protected Member Functions | List of all members
Kratos::ThermalExplicitSolverStrategy Class Reference

#include <thermal_explicit_solver_strategy.h>

Inheritance diagram for Kratos::ThermalExplicitSolverStrategy:
Collaboration diagram for Kratos::ThermalExplicitSolverStrategy:

Public Member Functions

 KRATOS_CLASS_POINTER_DEFINITION (ThermalExplicitSolverStrategy)
 
 ThermalExplicitSolverStrategy ()
 
 ThermalExplicitSolverStrategy (ExplicitSolverSettings &settings, const double max_delta_time, const int n_step_search, const double safety_factor, const int delta_option, ParticleCreatorDestructor::Pointer p_creator_destructor, DEM_FEM_Search::Pointer p_dem_fem_search, SpatialSearch::Pointer pSpSearch, Parameters strategy_parameters)
 
virtual ~ThermalExplicitSolverStrategy ()
 
void Initialize (void) override
 
void SetSearchRadiiOnAllParticles (ModelPart &r_model_part, double added_search_distance=0.0, double amplification=1.0) override
 
void SetSearchRadiiWithFemOnAllParticles (ModelPart &r_model_part, double added_search_distance=0.0, double amplification=1.0) override
 
double SolveSolutionStepStatic (void)
 
- Public Member Functions inherited from Kratos::ExplicitSolverStrategy
 KRATOS_CLASS_POINTER_DEFINITION (ExplicitSolverStrategy)
 Pointer definition of ExplicitSolverStrategy. More...
 
 ExplicitSolverStrategy ()
 
 ExplicitSolverStrategy (ExplicitSolverSettings &settings, const double max_delta_time, const int n_step_search, const double safety_factor, const int delta_option, ParticleCreatorDestructor::Pointer p_creator_destructor, DEM_FEM_Search::Pointer p_dem_fem_search, SpatialSearch::Pointer pSpSearch, Parameters strategy_parameters)
 
virtual ~ExplicitSolverStrategy ()
 Destructor. More...
 
template<class T >
void RebuildListOfSphericParticles (ElementsArrayType &pElements, std::vector< T * > &rCustomListOfParticles)
 
void RebuildListOfDiscontinuumSphericParticles ()
 
void RebuildPropertiesProxyPointers (std::vector< SphericParticle * > &rCustomListOfSphericParticles)
 
void SendProcessInfoToClustersModelPart ()
 
void UpdateMaxIdOfCreatorDestructor ()
 
void RepairPointersToNormalProperties (std::vector< SphericParticle * > &rCustomListOfSphericParticles)
 
virtual void AttachSpheresToStickyWalls ()
 
virtual void DisplayThreadInfo ()
 
double CalculateMaxInletTimeStep ()
 
virtual void InitializeClusters ()
 
virtual void GetClustersForce ()
 
virtual void GetRigidBodyElementsForce ()
 
virtual double SolveSolutionStep ()
 
void SearchDEMOperations (ModelPart &r_model_part, bool has_mpi=true)
 
void SearchFEMOperations (ModelPart &r_model_part, bool has_mpi=true)
 
virtual void ForceOperations (ModelPart &r_model_part)
 
void GetForce ()
 
void FastGetForce ()
 
virtual void PerformTimeIntegrationOfMotion (int StepFlag=0)
 
void InitializeSolutionStep ()
 
virtual void BoundingBoxUtility (bool is_time_to_mark_and_remove=true)
 
virtual void FinalizeSolutionStep ()
 
void InitializeElements ()
 
void InitializeDEMElements ()
 
void InitializeFEMElements ()
 
void InitializeFEMWallsAsRigidBodyElements (ModelPart::SubModelPartsContainerType::iterator &sub_model_part)
 
void MarkToDeleteAllSpheresInitiallyIndentedWithFEM (ModelPart &rSpheresModelPart)
 
void ComputeNodalArea ()
 
void ComputeNormalPressureVectorField ()
 
virtual void CalculateConditionsRHSAndAdd ()
 
void ClearFEMForces ()
 
void CalculateNodalPressuresAndStressesOnWalls ()
 
void SetFlagAndVariableToNodes (const Kratos::Flags &r_flag_name, ComponentOf3ComponentsVariableType &r_variable_to_set, const double value, NodesArrayType &r_nodes_array)
 
void SetVariableToNodes (ComponentOf3ComponentsVariableType &r_variable_to_set, const double value, NodesArrayType &r_nodes_array)
 
void ResetPrescribedMotionFlagsRespectingImposedDofs ()
 
void ApplyPrescribedBoundaryConditions ()
 
void ApplyInitialConditions ()
 
void SetNormalRadiiOnAllParticles (ModelPart &r_model_part)
 
virtual void SearchNeighbours ()
 
virtual void ComputeNewNeighboursHistoricalData ()
 
virtual void CreateContactElements ()
 
void InitializeContactElements ()
 
void PrepareContactElementsForPrinting ()
 
virtual void ComputeNewRigidFaceNeighboursHistoricalData ()
 
virtual void SearchRigidFaceNeighbours ()
 
void CheckHierarchyWithCurrentNeighbours ()
 
void CalculateInitialMaxIndentations (const ProcessInfo &r_process_info)
 
void PrepareContactModelPart (ModelPart &r_model_part, ModelPart &mcontacts_model_part)
 
void PrepareElementsForPrinting ()
 
void SynchronizeHistoricalVariables (ModelPart &r_model_part)
 
void SynchronizeRHS (ModelPart &r_model_part)
 
void Check_MPI (bool &has_mpi)
 
virtual double ComputeCoordinationNumber (double &standard_dev)
 
ModelPartGetModelPart ()
 
ModelPartGetFemModelPart ()
 
ModelPartGetContactModelPart ()
 
ModelPartGetClusterModelPart ()
 
ModelPartGetInletModelPart ()
 
ModelPartGetRigidBodyModelPart ()
 
VectorResultElementsContainerTypeGetResults ()
 
VectorDistanceTypeGetResultsDistances ()
 
RadiusArrayTypeGetArrayOfAmplifiedRadii ()
 
intGetNStepSearch ()
 
intGetSearchControl ()
 
intGetNumberOfThreads ()
 
doubleGetMaxTimeStep ()
 
doubleGetSafetyFactor ()
 
intGetDeltaOption ()
 
ParticleCreatorDestructor::Pointer & GetParticleCreatorDestructor ()
 
SpatialSearch::Pointer & GetSpSearch ()
 
VectorResultConditionsContainerTypeGetRigidFaceResults ()
 
VectorDistanceTypeGetRigidFaceResultsDistances ()
 
DEM_FEM_Search::Pointer & GetDemFemSearch ()
 
virtual ElementsArrayTypeGetElements (ModelPart &r_model_part)
 
virtual ElementsArrayTypeGetAllElements (ModelPart &r_model_part)
 

Public Attributes

std::vector< SphericParticle * > mListOfSphericParticles
 

Protected Member Functions

void SetSolveFrequency (void)
 
void PerformThermalTimeIntegration (void)
 
void SetSearchRadii (ModelPart &r_model_part, double added_search_distance, double amplification)
 

Additional Inherited Members

- Public Types inherited from Kratos::ExplicitSolverStrategy
typedef ModelPart::NodesContainerType NodesArrayType
 
typedef ModelPart::ElementsContainerType ElementsArrayType
 
typedef ElementsArrayType::iterator ElementsIterator
 
typedef ModelPart::ConditionsContainerType ConditionsArrayType
 
typedef ModelPart::NodesContainerType::ContainerType NodesContainerType
 
typedef ModelPart::ElementsContainerType::ContainerType ElementsContainerType
 
typedef ModelPart::ConditionsContainerType::ContainerType ConditionsContainerType
 
typedef SpatialSearch::ResultElementsContainerType ResultElementsContainerType
 
typedef SpatialSearch::VectorResultElementsContainerType VectorResultElementsContainerType
 
typedef SpatialSearch::RadiusArrayType RadiusArrayType
 
typedef SpatialSearch::DistanceType DistanceType
 
typedef SpatialSearch::VectorDistanceType VectorDistanceType
 
typedef SpatialSearch::ResultConditionsContainerType ResultConditionsContainerType
 
typedef SpatialSearch::VectorResultConditionsContainerType VectorResultConditionsContainerType
 
typedef PointerVectorSet< Properties, IndexedObjectPropertiesContainerType
 
typedef PropertiesContainerType::iterator PropertiesIterator
 
typedef DiscreteParticleConfigure< 3 > ElementConfigureType
 
typedef NodeConfigure< 3 > NodeConfigureType
 
typedef RigidFaceGeometricalObjectConfigure< 3 > RigidFaceGeometricalConfigureType
 
typedef Variable< doubleComponentOf3ComponentsVariableType
 
- Protected Attributes inherited from Kratos::ExplicitSolverStrategy
Parameters mParameters
 
bool mRemoveBallsInitiallyTouchingWallsOption
 
VectorResultElementsContainerType mResults
 
VectorDistanceType mResultsDistances
 
RadiusArrayType mArrayOfAmplifiedRadii
 
int mNStepSearch
 
int mSearchControl
 
int mNumberOfThreads
 
double mMaxTimeStep
 
double mSafetyFactor
 
int mDeltaOption
 
ParticleCreatorDestructor::Pointer mpParticleCreatorDestructor
 
DEM_FEM_Search::Pointer mpDemFemSearch
 
SpatialSearch::Pointer mpSpSearch
 
bool mDoSearchNeighbourElements
 
bool mDoSearchNeighbourFEMElements
 
VectorResultConditionsContainerType mRigidFaceResults
 
VectorDistanceType mRigidFaceResultsDistances
 
ModelPartmpFem_model_part
 
ModelPartmpDem_model_part
 
ModelPartmpInlet_model_part
 
ModelPartmpContact_model_part
 
ModelPartmpCluster_model_part
 
ModelPartmpRigidBody_model_part
 
std::vector< SphericParticle * > mListOfSphericParticles
 
std::vector< SphericParticle * > mListOfGhostSphericParticles
 

Constructor & Destructor Documentation

◆ ThermalExplicitSolverStrategy() [1/2]

Kratos::ThermalExplicitSolverStrategy::ThermalExplicitSolverStrategy ( )

◆ ThermalExplicitSolverStrategy() [2/2]

Kratos::ThermalExplicitSolverStrategy::ThermalExplicitSolverStrategy ( ExplicitSolverSettings settings,
const double  max_delta_time,
const int  n_step_search,
const double  safety_factor,
const int  delta_option,
ParticleCreatorDestructor::Pointer  p_creator_destructor,
DEM_FEM_Search::Pointer  p_dem_fem_search,
SpatialSearch::Pointer  pSpSearch,
Parameters  strategy_parameters 
)

◆ ~ThermalExplicitSolverStrategy()

Kratos::ThermalExplicitSolverStrategy::~ThermalExplicitSolverStrategy ( )
virtual

Member Function Documentation

◆ Initialize()

void Kratos::ThermalExplicitSolverStrategy::Initialize ( void  )
overridevirtual

Reimplemented from Kratos::ExplicitSolverStrategy.

◆ KRATOS_CLASS_POINTER_DEFINITION()

Kratos::ThermalExplicitSolverStrategy::KRATOS_CLASS_POINTER_DEFINITION ( ThermalExplicitSolverStrategy  )

◆ PerformThermalTimeIntegration()

void Kratos::ThermalExplicitSolverStrategy::PerformThermalTimeIntegration ( void  )
protected

◆ SetSearchRadii()

void Kratos::ThermalExplicitSolverStrategy::SetSearchRadii ( ModelPart r_model_part,
double  added_search_distance,
double  amplification 
)
protected

◆ SetSearchRadiiOnAllParticles()

void Kratos::ThermalExplicitSolverStrategy::SetSearchRadiiOnAllParticles ( ModelPart r_model_part,
double  added_search_distance = 0.0,
double  amplification = 1.0 
)
overridevirtual

Reimplemented from Kratos::ExplicitSolverStrategy.

◆ SetSearchRadiiWithFemOnAllParticles()

void Kratos::ThermalExplicitSolverStrategy::SetSearchRadiiWithFemOnAllParticles ( ModelPart r_model_part,
double  added_search_distance = 0.0,
double  amplification = 1.0 
)
overridevirtual

Reimplemented from Kratos::ExplicitSolverStrategy.

◆ SetSolveFrequency()

void Kratos::ThermalExplicitSolverStrategy::SetSolveFrequency ( void  )
protected

◆ SolveSolutionStepStatic()

double Kratos::ThermalExplicitSolverStrategy::SolveSolutionStepStatic ( void  )

Member Data Documentation

◆ mListOfSphericParticles

std::vector<SphericParticle*> Kratos::ExplicitSolverStrategy::mListOfSphericParticles

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