Electromagnetic Template Library (EMTL)
Loading...
Searching...
No Matches
time_profile_coord_t Class Reference

Time profile for delayed boundary conditions in one dimension. Consists of a set of flat-time and increasing-time regions along a specified coordinate. More...

#include <mesh_ui.h>

Inheritance diagram for time_profile_coord_t:
Collaboration diagram for time_profile_coord_t:

Public Member Functions

bool check_gain (valtype r0, valtype r1)
 Checks whether the exact specific interval already exists in the list.
 
int add_gain (valtype r0, valtype r1)
 Inserts an interval where time is increasing with the rate of the Courant factor per space unit.
 
valtype get_space_gain (valtype val, int *in_gain=nullptr) const
 Gets time value for a specific space point within [rmin, rmax].
 
valtype get_space_gain (const Vector_3 &pos, int *in_gain=nullptr) const override
 Gets space gain value corresponding to time gain at specific space point.
 
valtype get_time_gain (const Vector_3 &pos, int *in_gain=nullptr) const override
 Gets time value for a specific space point.
 
valtype get_max_gain (const Vector_3 &pos0=Vector_3(-VEC_INFTY), const Vector_3 &pos1=Vector_3(VEC_INFTY)) const override
 Gets time gain within specific box (infinite by default).
 
valtype get_time_step () const override
 This profile uses uniform time step. Uniform space steps are not required.
 

Detailed Description

Time profile for delayed boundary conditions in one dimension. Consists of a set of flat-time and increasing-time regions along a specified coordinate.

Member Function Documentation

◆ add_gain()

int time_profile_coord_t::add_gain ( valtype  r0,
valtype  r1 
)
inline

Inserts an interval where time is increasing with the rate of the Courant factor per space unit.

Returns
>0 on success, <0 if case of error (improper/overlapping interval)

Cf


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