OSHUN  beta
Arbitrary Order Spherical-Harmonic 1D-3P Vlasov-Fokker-Planck-Maxwell code
VlasovFunctor1D_implicitE_p1 Class Reference

#include <functors.h>

Inheritance diagram for VlasovFunctor1D_implicitE_p1:
Collaboration diagram for VlasovFunctor1D_implicitE_p1:

Public Member Functions

 VlasovFunctor1D_implicitE_p1 (vector< size_t > Nl, vector< size_t > Nm, vector< double > pmax, vector< size_t > Np, double xmin, double xmax, size_t Nx)
 
 ~VlasovFunctor1D_implicitE_p1 ()
 
void operator() (const State1D &Yin, State1D &Yslope)
 
void operator() (const State1D &Yin, const State1D &Y2in, State1D &Yslope)
 
void operator() (const State1D &Yin, State1D &Yslope, size_t dir)
 

Private Attributes

vector< Spatial_Advection_1DSA
 
vector< Magnetic_Field_1DBF
 
vector< Hydro_Advection_1DHA
 

Detailed Description

Definition at line 128 of file functors.h.

Constructor & Destructor Documentation

◆ VlasovFunctor1D_implicitE_p1()

VlasovFunctor1D_implicitE_p1::VlasovFunctor1D_implicitE_p1 ( vector< size_t >  Nl,
vector< size_t >  Nm,
vector< double >  pmax,
vector< size_t >  Np,
double  xmin,
double  xmax,
size_t  Nx 
)

Definition at line 345 of file functors.cpp.

References VlasovFunctor1D_explicitE::BF, and VlasovFunctor1D_explicitE::SA.

346  {
347 // //--------------------------------------------------------------
348 
349  for (size_t s(0); s < Nl.size(); ++s){
350 
351  SA.push_back( Spatial_Advection_1D(Nl[s], Nm[s], 0.0, pmax[s], Np[s], xmin, xmax, Nx) );
352 
353  HA.push_back( Hydro_Advection_1D(Nl[s], Nm[s], 0.0, pmax[s], Np[s], xmin, xmax, Nx) );
354 
355  BF.push_back( Magnetic_Field_1D(Nl[s], Nm[s], 0.0, pmax[s], Np[s], xmin, xmax, Nx) );
356 
357  }
358 
359 }
vector< Spatial_Advection_1D > SA
Definition: functors.h:143
vector< Hydro_Advection_1D > HA
Definition: functors.h:149
vector< Magnetic_Field_1D > BF
Definition: functors.h:147

◆ ~VlasovFunctor1D_implicitE_p1()

VlasovFunctor1D_implicitE_p1::~VlasovFunctor1D_implicitE_p1 ( )
inline

Definition at line 135 of file functors.h.

References VlasovFunctor1D_explicitE::operator()().

135 { };
Here is the call graph for this function:

Member Function Documentation

◆ operator()() [1/3]

void VlasovFunctor1D_implicitE_p1::operator() ( const State1D Yin,
State1D Yslope 
)
virtual

Implements Algorithms::AbstFunctor< State1D >.

Definition at line 364 of file functors.cpp.

References VlasovFunctor1D_explicitE::BF, EMF1D::Bx(), EMF1D::By(), EMF1D::Bz(), State1D::DF(), State1D::EMF(), DistFunc1D::Filterp(), DistFunc1D::l0(), VlasovFunctor1D_explicitE::SA, and State1D::Species().

364  {
365 //--------------------------------------------------------------
366 
367  Yslope = 0.0;
368 
369  for (size_t s(0); s < Yin.Species(); ++s) {
370 
371 
372  if (Yin.DF(s).l0() == 1) {
373  SA[s].f1only(Yin.DF(s),Yslope.DF(s));
374  BF[s].f1only(Yin.DF(s),Yin.EMF().Bx(),Yin.EMF().By(),Yin.EMF().Bz(),Yslope.DF(s));
375  // HA[s](Yin.DF(s),Yin.HYDRO(),Yslope.DF(s));
376  }
377  else {
378  SA[s](Yin.DF(s),Yslope.DF(s));
379  BF[s](Yin.DF(s),Yin.EMF().Bx(),Yin.EMF().By(),Yin.EMF().Bz(),Yslope.DF(s));
380  // HA[s](Yin.DF(s),Yin.HYDRO(),Yslope.DF(s));
381  }
382 
383  Yslope.DF(s) = Yslope.DF(s).Filterp();
384 
385 
386  }
387 
388 }
Field1D & By()
Definition: state.h:294
DistFunc1D & Filterp()
Definition: state.cpp:934
vector< Spatial_Advection_1D > SA
Definition: functors.h:143
Field1D & Bx()
Definition: state.h:293
Field1D & Bz()
Definition: state.h:295
DistFunc1D & DF(size_t s)
Definition: state.h:602
size_t l0() const
Definition: state.h:396
size_t Species() const
Definition: state.h:596
vector< Magnetic_Field_1D > BF
Definition: functors.h:147
EMF1D & EMF() const
Definition: state.h:610
Here is the call graph for this function:

◆ operator()() [2/3]

void VlasovFunctor1D_implicitE_p1::operator() ( const State1D Yin,
const State1D Y2in,
State1D Yslope 
)

◆ operator()() [3/3]

void VlasovFunctor1D_implicitE_p1::operator() ( const State1D Yin,
State1D Yslope,
size_t  dir 
)
virtual

Implements Algorithms::AbstFunctor< State1D >.

Definition at line 389 of file functors.cpp.

389 {}

Field Documentation

◆ BF

vector<Magnetic_Field_1D> VlasovFunctor1D_implicitE_p1::BF
private

Definition at line 147 of file functors.h.

◆ HA

vector<Hydro_Advection_1D> VlasovFunctor1D_implicitE_p1::HA
private

Definition at line 149 of file functors.h.

◆ SA

vector<Spatial_Advection_1D> VlasovFunctor1D_implicitE_p1::SA
private

Definition at line 143 of file functors.h.


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