ActModel< ActTrait, SrcTrait > Class Template Reference

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

#include <ActuatorModel.H>

Inheritance diagram for amr_wind::actuator::ActModel< ActTrait, SrcTrait >:
[legend]
Collaboration diagram for amr_wind::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 amr_wind::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 amr_wind::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>
amr_wind::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 amr_wind::actuator::ActModel< ActTrait, SrcTrait >::compute_forces ( )
inlineoverride

◆ compute_source_term()

template<typename ActTrait , typename SrcTrait = ActSrcLine>
void amr_wind::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 amr_wind::actuator::ActModel< ActTrait, SrcTrait >::determine_influenced_procs ( )
inlineoverride

◆ determine_root_proc()

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

◆ id()

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

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

◆ identifier()

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

◆ info() [1/2]

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

Return the core info object for this actuator instance.

◆ info() [2/2]

template<typename ActTrait , typename SrcTrait = ActSrcLine>
ActInfo & amr_wind::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 amr_wind::actuator::ActModel< ActTrait, SrcTrait >::init_actuator_source ( )
inlineoverride

◆ label()

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

Return the unique identifier (name) for this instance.

◆ meta()

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

Return the meta info object for this actuator instance.

◆ num_velocity_points()

template<typename ActTrait , typename SrcTrait >
int amr_wind::actuator::ActModel< ActTrait, SrcTrait >::num_velocity_points ( ) const
override

◆ prepare_outputs()

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

◆ read_inputs()

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

◆ update_fields()

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

◆ update_positions()

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

◆ write_outputs()

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

Member Data Documentation

◆ m_data

template<typename ActTrait , typename SrcTrait = ActSrcLine>
ActTrait::DataType amr_wind::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> amr_wind::actuator::ActModel< ActTrait, SrcTrait >::m_out_op
private

Outputs processor.

◆ m_src_op

template<typename ActTrait , typename SrcTrait = ActSrcLine>
ops::ActSrcOp<ActTrait, SrcTrait> amr_wind::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/amr-wind/amr-wind/amr-wind/wind_energy/actuator/ActuatorModel.H