Electromagnetic Template Library (EMTL)
Loading...
Searching...
No Matches
emFixTFSF Class Referenceabstract

Base class-packer for TF/SF fix. More...

#include <tfsf.h>

Inheritance diagram for emFixTFSF:
Collaboration diagram for emFixTFSF:

Public Member Functions

virtual void set_output_ptr (EmtypePtr_t ptr)=0
 Specify pointer at the data array where TF/SF fix will be applied.
 
virtual int record (indtype ind, emtype coef, const Vector_3 &pos, int field, const Vector_3 &fdir, bool first_upd_field, valtype tshift)=0
 Record array index ind, where fix will be applied, coefficient coef, accompanied this fix, position pos where corresponding incident wave is taken (projection fdir of the incident field).
 
virtual int get_record_data (valtype &distance, emtype &coef, const Vector_3 &pos, int field, const Vector_3 &fdir)=0
 Gets distance from source and coefficient: primary recordable TFSF data per contour.
 
virtual ptrdiff_t store_fix (emFixStorage &fs, const indtype &ref_ind, bool first_upd_field)=0
 Record collected cell data into fix storage and clears packs.
 
virtual void step ()=0
 Make one time step (including possible step for the incident source).
 
virtual time_profile_tset_time_profile (time_profile_t *tprof_, int managed=0)
 Resets the time profile, if managed =1, the pointer is managed (deleted) by current object.
 

Protected Attributes

mngptr< time_profile_ttprof
 Time profile in space (for Hyperconic simulations)
 

Detailed Description

Base class-packer for TF/SF fix.

Work with this packer assumes 2 stages:

  1. Record fix (function record). At this stage you also need to specify pointer at the data array where fix will be applied (function set_output_ptr)
  2. Apply fix at the each calculation step (function step)

Member Function Documentation

◆ record()

virtual int emFixTFSF::record ( indtype  ind,
emtype  coef,
const Vector_3 &  pos,
int  field,
const Vector_3 &  fdir,
bool  first_upd_field,
valtype  tshift 
)
pure virtual

Record array index ind, where fix will be applied, coefficient coef, accompanied this fix, position pos where corresponding incident wave is taken (projection fdir of the incident field).

Parameters
first_upd_fieldif true, specifies that H field is updated first on the mesh Выполняется на стадии записи поправки.

Implemented in emTFSFModifyExactSimple, and emFixSourceTFSF< source_t >.

◆ set_time_profile()

virtual time_profile_t * emFixTFSF::set_time_profile ( time_profile_t tprof_,
int  managed = 0 
)
inlinevirtual

Resets the time profile, if managed =1, the pointer is managed (deleted) by current object.

Returns
the previous value

Reimplemented in emFixSourceTFSF< source_t >.


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