ActModel< ActTrait, SrcTrait > Class Template Reference

Kynema-SGF API: kynema_sgf::actuator::ActModel< ActTrait, SrcTrait > Class Template Reference
Kynema-SGF API v0.1.0
CFD solver for wind plant simulations
Loading...
Searching...
No Matches
kynema_sgf::actuator::ActModel< ActTrait, SrcTrait > Class Template Reference

#include <ActuatorModel.H>

Inheritance diagram for kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >:
[legend]
Collaboration diagram for kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >:
[legend]

Public Member Functions

 ActModel (CFDSim &sim, const std::string &label, const int id)
const std::string & label () const override
 Return the unique identifier (name) for this instance.
int id () const override
 Return the unique tag (integer ID) for this instance.
const ActInfoinfo () const override
 Return the core info object for this actuator instance.
ActInfoinfo () override
 Return the core info object for this actuator instance.
const auto & meta () const
 Return the meta info object for this actuator instance.
void read_inputs (const utils::ActParser &pp) override
void determine_influenced_procs () override
void determine_root_proc (amrex::Vector< int > &act_proc_count) override
int num_velocity_points () const override
void update_positions (VecSlice &pos) override
void update_fields (const VecSlice &vel, const RealSlice &density) override
void compute_forces () override
void compute_source_term (const int lev, const amrex::MFIter &mfi, const amrex::Geometry &geom) override
void prepare_outputs (const std::string &out_dir) override
void write_outputs () override
void init_actuator_source () override

Static Public Member Functions

static std::string identifier ()

Private Attributes

ActTrait::DataType m_data
 Instance that holds all data related to a particular actuator type.
ops::ActSrcOp< ActTrait, SrcTrait > m_src_op
 Source computation operator.
ops::ProcessOutputsOp< ActTrait, SrcTrait > m_out_op
 Outputs processor.

Detailed Description

template<typename ActTrait, typename SrcTrait = ActSrcLine>
class kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >

Concrete implementation of the ActuatorModel for different actuator types.

Template Parameters
ActTraitAn actuator type trait that defines the behavior of the different actions (initialization, velocity sampling, force computation, and momentum source term computations) that are executed by the ActuatorModel class through the kynema_sgf::Actuator physics driver class.
SrcTraitA source type trait that defines how the forcing term is computed, e.g., if the turbine rotor is represented as a line or a disk. For most cases, like the fixed wing case, this will just be line, therefore, it is set as default for convenience.

Constructor & Destructor Documentation

◆ ActModel()

template<typename ActTrait, typename SrcTrait = ActSrcLine>
kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >::ActModel ( CFDSim & sim,
const std::string & label,
const int id )
inline
Parameters
simCFD simulation environment instance
labelUnique string identifier for this instance
idUnique integer tag for this instance

Member Function Documentation

◆ compute_forces()

template<typename ActTrait, typename SrcTrait = ActSrcLine>
void kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >::compute_forces ( )
inlineoverride

◆ compute_source_term()

template<typename ActTrait, typename SrcTrait = ActSrcLine>
void kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >::compute_source_term ( const int lev,
const amrex::MFIter & mfi,
const amrex::Geometry & geom )
inlineoverride

◆ determine_influenced_procs()

template<typename ActTrait, typename SrcTrait = ActSrcLine>
void kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >::determine_influenced_procs ( )
inlineoverride

◆ determine_root_proc()

template<typename ActTrait, typename SrcTrait>
void kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >::determine_root_proc ( amrex::Vector< int > & act_proc_count)
override

◆ id()

template<typename ActTrait, typename SrcTrait = ActSrcLine>
int kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >::id ( ) const
inlinenodiscardoverride

Return the unique tag (integer ID) for this instance.

◆ identifier()

template<typename ActTrait, typename SrcTrait = ActSrcLine>
std::string kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >::identifier ( )
inlinestatic

◆ info() [1/2]

template<typename ActTrait, typename SrcTrait = ActSrcLine>
const ActInfo & kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >::info ( ) const
inlinenodiscardoverride

Return the core info object for this actuator instance.

◆ info() [2/2]

template<typename ActTrait, typename SrcTrait = ActSrcLine>
ActInfo & kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >::info ( )
inlineoverride

Return the core info object for this actuator instance.

◆ init_actuator_source()

template<typename ActTrait, typename SrcTrait = ActSrcLine>
void kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >::init_actuator_source ( )
inlineoverride

◆ label()

template<typename ActTrait, typename SrcTrait = ActSrcLine>
const std::string & kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >::label ( ) const
inlinenodiscardoverride

Return the unique identifier (name) for this instance.

◆ meta()

template<typename ActTrait, typename SrcTrait = ActSrcLine>
const auto & kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >::meta ( ) const
inlinenodiscard

Return the meta info object for this actuator instance.

◆ num_velocity_points()

template<typename ActTrait, typename SrcTrait>
int kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >::num_velocity_points ( ) const
nodiscardoverride

◆ prepare_outputs()

template<typename ActTrait, typename SrcTrait = ActSrcLine>
void kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >::prepare_outputs ( const std::string & out_dir)
inlineoverride

◆ read_inputs()

template<typename ActTrait, typename SrcTrait = ActSrcLine>
void kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >::read_inputs ( const utils::ActParser & pp)
inlineoverride

◆ update_fields()

template<typename ActTrait, typename SrcTrait = ActSrcLine>
void kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >::update_fields ( const VecSlice & vel,
const RealSlice & density )
inlineoverride

◆ update_positions()

template<typename ActTrait, typename SrcTrait = ActSrcLine>
void kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >::update_positions ( VecSlice & pos)
inlineoverride

◆ write_outputs()

template<typename ActTrait, typename SrcTrait = ActSrcLine>
void kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >::write_outputs ( )
inlineoverride

Member Data Documentation

◆ m_data

template<typename ActTrait, typename SrcTrait = ActSrcLine>
ActTrait::DataType kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >::m_data
private

Instance that holds all data related to a particular actuator type.

◆ m_out_op

template<typename ActTrait, typename SrcTrait = ActSrcLine>
ops::ProcessOutputsOp<ActTrait, SrcTrait> kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >::m_out_op
private

Outputs processor.

◆ m_src_op

template<typename ActTrait, typename SrcTrait = ActSrcLine>
ops::ActSrcOp<ActTrait, SrcTrait> kynema_sgf::actuator::ActModel< ActTrait, SrcTrait >::m_src_op
private

Source computation operator.


The documentation for this class was generated from the following file:
  • /home/runner/work/kynema-sgf/kynema-sgf/src/wind_energy/actuator/ActuatorModel.H