PhyStar  v0.0.0 thu24
dmdyn::init::InitPartData< N_dim > Class Template Reference

#include <InitPartData.hpp>

Collaboration diagram for dmdyn::init::InitPartData< N_dim >:

Public Member Functions

 InitPartData ()
 
 InitPartData (tml::table &partinfo, int &id)
 
 ~InitPartData ()
 
auto & setOverlapTag (const OverlapTag tag)
 
auto & setVelTag (const InitTag tag)
 
auto & setAngVelTag (const InitTag tag)
 
auto & setOrientTag (const InitTag tag)
 
auto & setEdges (const std::vector< std::vector< Real >> &domain_size0)
 
auto & setMaxNum (const int num)
 
auto getMaxNum ()
 
auto getSeedTag ()
 
auto getOrientTag ()
 
auto getVelTag ()
 
auto getAngVelTag ()
 
Real evalTotalVolume ()
 
bool evalConstraintFunction (blin::Vecr< N_dim > &pos)
 
Real testValidVolume (Real err=1e-5)
 
auto & generateFromRandomTool ()
 
auto & generateFromFile (std::string filename)
 
auto & generateFromFile ()
 
void updateOrientIfNecessary ()
 
void updateVelIfNecessary ()
 
void updateAngVelIfNecessary ()
 
void updateIfNecessary ()
 

Public Attributes

SmartPList< ParticleData< N_dim > > pdatalist
 
std::vector< CFunDatacfunlist
 
std::vector< std::string > oplist
 

Private Attributes

OverlapTag overlaptag_ = OverlapTag::OverLap
 
InitTag seedtag_ = InitTag::Random
 
InitTag veltag_ = InitTag::Local
 
std::vector< Realvelparams_
 
InitTag angveltag_ = InitTag::LocalFluidRotation
 
std::vector< Realangvelparams_
 
InitTag orienttag_ = InitTag::Random
 
std::vector< Realorientparams_
 
std::string filename_
 
Real edge_low_ [N_dim]
 
Real edge_up_ [N_dim]
 
Real total_vol_ = 0.0
 
Real valid_vol_frac = 0.0
 
int maxnum_ = 0
 
std::unordered_map< std::string, std::function< bool(bool, bool)> > ops
 

Constructor & Destructor Documentation

◆ InitPartData() [1/2]

template<int N_dim>
dmdyn::init::InitPartData< N_dim >::InitPartData ( )
inline

◆ InitPartData() [2/2]

template<int N_dim>
dmdyn::init::InitPartData< N_dim >::InitPartData ( tml::table &  partinfo,
int &  id 
)

◆ ~InitPartData()

template<int N_dim>
dmdyn::init::InitPartData< N_dim >::~InitPartData ( )
inline

Member Function Documentation

◆ evalConstraintFunction()

template<int N_dim>
bool dmdyn::init::InitPartData< N_dim >::evalConstraintFunction ( blin::Vecr< N_dim > &  pos)
inline

◆ evalTotalVolume()

template<int N_dim>
Real dmdyn::init::InitPartData< N_dim >::evalTotalVolume ( )
inline

◆ generateFromFile() [1/2]

template<int N_dim>
auto& dmdyn::init::InitPartData< N_dim >::generateFromFile ( )
inline

◆ generateFromFile() [2/2]

template<int N_dim>
auto & dmdyn::init::InitPartData< N_dim >::generateFromFile ( std::string  filename)

◆ generateFromRandomTool()

template<int N_dim>
auto & dmdyn::init::InitPartData< N_dim >::generateFromRandomTool

◆ getAngVelTag()

template<int N_dim>
auto dmdyn::init::InitPartData< N_dim >::getAngVelTag ( )
inline

◆ getMaxNum()

template<int N_dim>
auto dmdyn::init::InitPartData< N_dim >::getMaxNum ( )
inline

◆ getOrientTag()

template<int N_dim>
auto dmdyn::init::InitPartData< N_dim >::getOrientTag ( )
inline

◆ getSeedTag()

template<int N_dim>
auto dmdyn::init::InitPartData< N_dim >::getSeedTag ( )
inline

◆ getVelTag()

template<int N_dim>
auto dmdyn::init::InitPartData< N_dim >::getVelTag ( )
inline

◆ setAngVelTag()

template<int N_dim>
auto& dmdyn::init::InitPartData< N_dim >::setAngVelTag ( const InitTag  tag)
inline

◆ setEdges()

template<int N_dim>
auto& dmdyn::init::InitPartData< N_dim >::setEdges ( const std::vector< std::vector< Real >> &  domain_size0)
inline

◆ setMaxNum()

template<int N_dim>
auto& dmdyn::init::InitPartData< N_dim >::setMaxNum ( const int  num)
inline

◆ setOrientTag()

template<int N_dim>
auto& dmdyn::init::InitPartData< N_dim >::setOrientTag ( const InitTag  tag)
inline

◆ setOverlapTag()

template<int N_dim>
auto& dmdyn::init::InitPartData< N_dim >::setOverlapTag ( const OverlapTag  tag)
inline

◆ setVelTag()

template<int N_dim>
auto& dmdyn::init::InitPartData< N_dim >::setVelTag ( const InitTag  tag)
inline

◆ testValidVolume()

template<int N_dim>
Real dmdyn::init::InitPartData< N_dim >::testValidVolume ( Real  err = 1e-5)

References quadpack::min(), and RandomNumber< T_real >::randr().

Here is the call graph for this function:

◆ updateAngVelIfNecessary()

template<int N_dim>
void dmdyn::init::InitPartData< N_dim >::updateAngVelIfNecessary

References dmdyn::init::Value.

Here is the caller graph for this function:

◆ updateIfNecessary()

◆ updateOrientIfNecessary()

template<int N_dim>
void dmdyn::init::InitPartData< N_dim >::updateOrientIfNecessary

References dmdyn::init::Value.

Here is the caller graph for this function:

◆ updateVelIfNecessary()

template<int N_dim>
void dmdyn::init::InitPartData< N_dim >::updateVelIfNecessary

References dmdyn::init::Value.

Here is the caller graph for this function:

Member Data Documentation

◆ angvelparams_

template<int N_dim>
std::vector<Real> dmdyn::init::InitPartData< N_dim >::angvelparams_
private

◆ angveltag_

template<int N_dim>
InitTag dmdyn::init::InitPartData< N_dim >::angveltag_ = InitTag::LocalFluidRotation
private

◆ cfunlist

template<int N_dim>
std::vector<CFunData> dmdyn::init::InitPartData< N_dim >::cfunlist

◆ edge_low_

template<int N_dim>
Real dmdyn::init::InitPartData< N_dim >::edge_low_[N_dim]
private

◆ edge_up_

template<int N_dim>
Real dmdyn::init::InitPartData< N_dim >::edge_up_[N_dim]
private

◆ filename_

template<int N_dim>
std::string dmdyn::init::InitPartData< N_dim >::filename_
private

◆ maxnum_

template<int N_dim>
int dmdyn::init::InitPartData< N_dim >::maxnum_ = 0
private

◆ oplist

template<int N_dim>
std::vector<std::string> dmdyn::init::InitPartData< N_dim >::oplist

◆ ops

template<int N_dim>
std::unordered_map<std::string, std::function<bool(bool, bool)> > dmdyn::init::InitPartData< N_dim >::ops
private
Initial value:
= {
{"AND", [](bool a, bool b)
{ return a & b; }},
{"OR", [](bool a, bool b)
{ return a | b; }},
{"XOR", [](bool a, bool b)
{ return a ^ b; }},
}

◆ orientparams_

template<int N_dim>
std::vector<Real> dmdyn::init::InitPartData< N_dim >::orientparams_
private

◆ orienttag_

template<int N_dim>
InitTag dmdyn::init::InitPartData< N_dim >::orienttag_ = InitTag::Random
private

◆ overlaptag_

template<int N_dim>
OverlapTag dmdyn::init::InitPartData< N_dim >::overlaptag_ = OverlapTag::OverLap
private

◆ pdatalist

template<int N_dim>
SmartPList<ParticleData<N_dim> > dmdyn::init::InitPartData< N_dim >::pdatalist

◆ seedtag_

template<int N_dim>
InitTag dmdyn::init::InitPartData< N_dim >::seedtag_ = InitTag::Random
private

◆ total_vol_

template<int N_dim>
Real dmdyn::init::InitPartData< N_dim >::total_vol_ = 0.0
private

◆ valid_vol_frac

template<int N_dim>
Real dmdyn::init::InitPartData< N_dim >::valid_vol_frac = 0.0
private

◆ velparams_

template<int N_dim>
std::vector<Real> dmdyn::init::InitPartData< N_dim >::velparams_
private

◆ veltag_

template<int N_dim>
InitTag dmdyn::init::InitPartData< N_dim >::veltag_ = InitTag::Local
private

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