# PhasicFlow: src/Integration/boundaries/boundaryIntegration.hpp Source File
PhasicFlow is an open-source parallel DEM (discrete element method) package for simulating granular flow. It is developed in C++ and can be exectued on both GPU (like CUDA) and CPU.

boundaryIntegration.hpp
Go to the documentation of this file.
#ifndef __boundaryIntegration_hpp__
#define __boundaryIntegration_hpp__
#include "generalBoundary.hpp"
#include "virtualConstructor.hpp"
#include "pointFields.hpp"
namespace pFlow
{
class integration;
class boundaryIntegration
:
public generalBoundary
{
private:
const integration& integration_;
public:
TypeInfo("boundaryIntegration<none>");
boundaryIntegration(
const boundaryBase& boundary,
const pointStructure& pStruct,
const word& method,
integration& intgrtn);
~boundaryIntegration()override = default;
create_vCtor(
boundaryIntegration,
boundaryBase,
(
const boundaryBase& boundary,
const pointStructure& pStruct,
const word& method,
integration& intgrtn
),
(boundary, pStruct, method, intgrtn)
);
add_vCtor(
boundaryIntegration,
boundaryIntegration,
boundaryBase
);
bool hearChanges(
real t,
real dt,
uint32 iter,
const message &msg,
const anyList &varList) override
{
return true;
}
const integration& Integration()const
{
return integration_;
}
virtual
bool correct(real dt, const realx3PointField_D& y, const realx3PointField_D& dy)
{
return true;
}
virtual
bool correctPStruct(real dt, const realx3PointField_D& vel)
{
return true;
}
static
uniquePtr<boundaryIntegration> create(
const boundaryBase& boundary,
const pointStructure& pStruct,
const word& method,
integration& intgrtn);
};
}
#endif
pFlow::message
Definition: message.hpp:33
pFlow::real
float real
Definition: builtinTypes.hpp:45
pFlow::boundaryIntegration::create_vCtor
create_vCtor(boundaryIntegration, boundaryBase,(const boundaryBase &boundary, const pointStructure &pStruct, const word &method, integration &intgrtn),(boundary, pStruct, method, intgrtn))
pFlow::integration
Base class for integrating the first order ODE (IVP)
Definition: integration.hpp:51
pFlow::boundaryIntegration::Integration
const integration & Integration() const
Definition: boundaryIntegration.hpp:63
pFlow::uint32
unsigned int uint32
Definition: builtinTypes.hpp:56
pFlow::word
std::string word
Definition: builtinTypes.hpp:64
pointFields.hpp
pFlow::boundaryIntegration::correct
virtual bool correct(real dt, const realx3PointField_D &y, const realx3PointField_D &dy)
Definition: boundaryIntegration.hpp:69
pFlow::generalBoundary::pStruct
const auto & pStruct() const
Definition: generalBoundary.hpp:138
pFlow::boundaryIntegration::boundaryIntegration
boundaryIntegration(const boundaryBase &boundary, const pointStructure &pStruct, const word &method, integration &intgrtn)
Definition: boundaryIntegration.cpp:5
pFlow
Definition: demGeometry.hpp:27
pFlow::pointField
Definition: pointField.hpp:33
pFlow::pointStructure
Definition: pointStructure.hpp:34
pFlow::anyList
Definition: anyList.hpp:35
pFlow::boundaryIntegration::add_vCtor
add_vCtor(boundaryIntegration, boundaryIntegration, boundaryBase)
pFlow::boundaryIntegration::hearChanges
bool hearChanges(real t, real dt, uint32 iter, const message &msg, const anyList &varList) override
Definition: boundaryIntegration.hpp:53
virtualConstructor.hpp
pFlow::boundaryBase
Definition: boundaryBase.hpp:42
pFlow::boundaryIntegration::TypeInfo
TypeInfo("boundaryIntegration<none>")
pFlow::boundaryIntegration::~boundaryIntegration
~boundaryIntegration() override=default
pFlow::boundaryIntegration::integration_
const integration & integration_
Definition: boundaryIntegration.hpp:21
pFlow::boundaryIntegration::correctPStruct
virtual bool correctPStruct(real dt, const realx3PointField_D &vel)
Definition: boundaryIntegration.hpp:75
pFlow::uniquePtr
Definition: uniquePtr.hpp:42
generalBoundary.hpp
pFlow::boundaryIntegration
Definition: boundaryIntegration.hpp:15
pFlow::generalBoundary::boundary
const auto & boundary() const
Definition: generalBoundary.hpp:108
pFlow::boundaryIntegration::create
static uniquePtr< boundaryIntegration > create(const boundaryBase &boundary, const pointStructure &pStruct, const word &method, integration &intgrtn)
Definition: boundaryIntegration.cpp:16
pFlow::generalBoundary
Definition: generalBoundary.hpp:38