5#include "irighthandside.hpp"
34 DFieldMemVx m_ftarget;
51 IdxRangeX
const& gridx,
52 IdxRangeVx
const& gridvx,
78 DFieldSpXVx
operator()(DFieldSpXVx allfdistribu,
double dt)
const override;
91 void get_amplitudes(DFieldSpX amplitudes, DConstFieldSpXVx allfdistribu)
const;
103 void get_derivative(DFieldSpXVx df, DConstFieldSpXVx f, DConstFieldSpXVx f0)
const;
An abstract class representing a source in Boltzmann equation.
Definition irighthandside.hpp:16
A class that describes a source of particles.
Definition krook_source_adaptive.hpp:25
DFieldSpXVx operator()(DFieldSpXVx allfdistribu, double dt) const override
Update the distribution function following the KrookSourceAdaptive operator.
KrookSourceAdaptive(IdxRangeX const &gridx, IdxRangeVx const &gridvx, RhsType const type, double extent, double stiffness, double amplitude, double density, double temperature)
Creates an instance of the KrookSourceAdaptive class.
void get_derivative(DFieldSpXVx df, DConstFieldSpXVx f, DConstFieldSpXVx f0) const
Computes the expression of the time derivative of the distribution function.
KrookSourceAdaptive(KrookSourceAdaptive &&)=default
Creates an instance of the KrookSourceAdaptive class.
void get_amplitudes(DFieldSpX amplitudes, DConstFieldSpXVx allfdistribu) const
Computes the amplitude coefficient of the KrookSourceAdaptive operator.