Plugins
Loading...
Searching...
No Matches
ug::d3f::TimestepObserver< TDomain, TAlgebra > Class Template Reference

Observer that logs the time step history (time and dt) to a text file. More...

#include <river_data_observer.h>

+ Inheritance diagram for ug::d3f::TimestepObserver< TDomain, TAlgebra >:

Public Types

typedef ITimeIntegratorObserver< TDomain, TAlgebra > base_type
 
typedef GridFunction< TDomain, TAlgebra > grid_function_type
 
- Public Types inherited from ug::ITimeIntegratorObserver< TDomain, TAlgebra >
typedef GridFunction< TDomain, TAlgebra > grid_function_type
 

Public Member Functions

number get_last_timestep () const
 Returns the last used time step size.
 
bool step_process (SmartPtr< grid_function_type > uNew, int step, number time, number dt) override
 Logs the current time and step size.
 
 TimestepObserver (const char *filename)
 Constructor. Opens the file and writes the header.
 
virtual ~TimestepObserver ()
 
- Public Member Functions inherited from ug::ITimeIntegratorObserver< TDomain, TAlgebra >
virtual ~ITimeIntegratorObserver ()
 

Static Public Attributes

static const int dim = TDomain::dim
 

Protected Attributes

std::ofstream m_file
 
const char * m_filename
 
number m_last_dt = 0.0
 

Detailed Description

template<class TDomain, class TAlgebra>
class ug::d3f::TimestepObserver< TDomain, TAlgebra >

Observer that logs the time step history (time and dt) to a text file.

Useful for monitoring adaptive time-stepping behavior.

Template Parameters
TDomainThe domain type.
TAlgebraThe algebra type.

Member Typedef Documentation

◆ base_type

template<class TDomain , class TAlgebra >
typedef ITimeIntegratorObserver<TDomain, TAlgebra> ug::d3f::TimestepObserver< TDomain, TAlgebra >::base_type

◆ grid_function_type

template<class TDomain , class TAlgebra >
typedef GridFunction<TDomain, TAlgebra> ug::d3f::TimestepObserver< TDomain, TAlgebra >::grid_function_type

Constructor & Destructor Documentation

◆ TimestepObserver()

template<class TDomain , class TAlgebra >
ug::d3f::TimestepObserver< TDomain, TAlgebra >::TimestepObserver ( const char *  filename)
inlineexplicit

Constructor. Opens the file and writes the header.

Parameters
filenamePath to the output log file.

References ug::d3f::TimestepObserver< TDomain, TAlgebra >::m_file, ug::d3f::TimestepObserver< TDomain, TAlgebra >::m_filename, pcl::ProcRank(), and UG_THROW.

◆ ~TimestepObserver()

template<class TDomain , class TAlgebra >
virtual ug::d3f::TimestepObserver< TDomain, TAlgebra >::~TimestepObserver ( )
inlinevirtual

Member Function Documentation

◆ get_last_timestep()

template<class TDomain , class TAlgebra >
number ug::d3f::TimestepObserver< TDomain, TAlgebra >::get_last_timestep ( ) const
inline

Returns the last used time step size.

References ug::d3f::TimestepObserver< TDomain, TAlgebra >::m_last_dt.

◆ step_process()

template<class TDomain , class TAlgebra >
bool ug::d3f::TimestepObserver< TDomain, TAlgebra >::step_process ( SmartPtr< grid_function_type uNew,
int  step,
number  time,
number  dt 
)
inlineoverridevirtual

Member Data Documentation

◆ dim

template<class TDomain , class TAlgebra >
const int ug::d3f::TimestepObserver< TDomain, TAlgebra >::dim = TDomain::dim
static

◆ m_file

◆ m_filename

template<class TDomain , class TAlgebra >
const char* ug::d3f::TimestepObserver< TDomain, TAlgebra >::m_filename
protected

◆ m_last_dt

template<class TDomain , class TAlgebra >
number ug::d3f::TimestepObserver< TDomain, TAlgebra >::m_last_dt = 0.0
protected

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