Type | Location | Extends | Description |
---|---|---|---|
AdditiveDerivation | additive_derivation_class | Derivation | Composite derivation class containing a number of calculation rules applied additively. All derivations must return same length array |
BasicNormalization | basic_normalization_class | Normalization | Basic normalization based on electron quantities and containing most common values |
BoundedExtDerivation | bounded_ext_derivation_class | Derivation | Calculates extrapolated value of a fluid quantity at a boundary cell edge, optionally applying a lower and/or upper bound to the extrapolated value. Accepts scalar variables for lower/upper bounds. Expects 1-3 variables, The first expected variable name is the interpolated variable. The second is the upper bound if no lower bound variable is expected, otherwise it is the lower bound. The third is the upper bound (if expected). Bounds are all expected to have positive values, and this will be ensured by taking their absolute values. If applied to the left boundary, will apply -abs(lowerBound) as upper bound and -abs(upperBound) as lower bound, i.e. the bounds are reflected around 0. |
BTableau | explicit_rk_integrator_class | None | Butcher tableau derived type |
CalculationKernel | calculation_tree_class | None | Kernel containing calculation node properties |
CalculationNode | calculation_tree_class | Object | Node class for the abstract calculation left child/right sibling tree. Each node has a reference to its leftmost child, its sibling to the immediate right, and to its parent. |
CalculationRule | variable_container_class | Object | Object used to calculate derived variables using a derivation object and set of required variable names |
CalculationTree | calculation_tree_class | Object | |
CalculationTreeDerivation | calculation_tree_derivation_class | Derivation | Derivation object that has a calculation tree component, used to evaluate the derivation result independently of the passed indices. The derivation is constructed using a FlatTree, which needs to be unpacked before the derivation can be used. Note: This derivation should only be used if the passed object is the global VariableContainers variable array. |
CCLDiffDerivation | ccl_diff_derivation_class | Derivation | Calculates the Chang-Cooper-Langdon diffusion coefficient for f0 Coulomb collisions assuming that the passed variables are the single harmonic f0 and the ccl interpolation weight |
CCLDragDerivation | ccl_drag_derivation_class | Derivation | Calculates the Chang-Cooper-Langdon drag coefficient for f0 Coulomb collisions assuming that the passed variable is the single harmonic f0 |
CCLWeightDerivation | ccl_weight_derivation_class | Derivation | Calculates the Chang-Cooper-Langdon interpolation weight for f0 Coulomb collisions assuming that the two passed variables are single harmonic C and D integrals (see 4.5 in Mijin thesis) |
CDiffStencilValGenerator | c_diff_stencil_gen_class | JaggedArrayGenerator | JaggedArrayGenerator for calculating fixed central differencing stencil with no face interpolation |
CentralDiffDerivation | central_diff_grad_derivation_class | Derivation | Returns equal to the central difference of the first passed (fluid) variable, optionally multiplied by a constant and product of fluid variables raised to corresponding powers |
ColdIonIJIntDerivation | cold_ion_ij_int_derivation_class | Derivation | Calculates the Shkarofsky I or J integrals for cold drifting ions (normalized to ion density). The passed variable is assumed to be the ion flow velocity |
CommunicationData | mpi_controller_class | None | Contains lists of variables to broadcast in processor rows and variables participating in halo exchange |
CompositeIntegrator | composite_integrator_class | Manipulator | Composite integrator object allowing for different integration stages |
CompositeManipulator | composite_manipulator_class | Object | Composite manipulator object allowing for application of multiple manipulators in series based on their priority |
ConstSignal | constant_signal_class | TimeSignal | Signal wrapper always returning 1 |
CoordProfiles | general_mat_term_class | None | Container for profiles in the x,h, and v directions |
COOSparsityPattern | coo_sparsity_pattern_class | Object | Coordinate list format sparsity pattern |
CoulombLogDerivation | coulomb_log_derivation_class | Derivation | Returns values of the coulomb log based on electron density and temperature variables (and optionally ionization). The passed indices are assumed to be in T,n,Z order if ee or ei logarithm, or in n1,n2,T1,T2 order if ii logarithm. Assumes that density is normalized to m^{-3} units, and temperature to eV. |
CRMBoltzTermGenerator | crm_fixed_boltzmann_term_generator_class | TermGenerator | TermGenerator object used to generate electron Boltzmann terms with fixed inelastic mappings based on associated variables in species list and CRM modelbound data. Assumes that all passed transition indices correspond to fixed inlastic mapping transitions. Assumes that the cross-section values in the transitions include any nonlinear normalization dependence (e.g. recombination etc.) |
CRMDensTermGenerator | crm_dens_term_generator_class | TermGenerator | TermGenerator object used to generate particle source terms based on associated variables in species list and CRM modelbound data. Assumes rates are normalized so that the resulting source term is normalized to densNorm/timeNorm. |
CRMElEnergyTermGenerator | crm_el_energy_term_generator_class | TermGenerator | TermGenerator object used to generate electronj energy source and sink terms based on associated variables in species list and CRM modelbound data. Assumes rates are normalized so that the resulting source term is normalized to densNorm*eVTemperature/timeNorm. |
CRMSecElTermGenerator | crm_secondary_el_source_term_generator_class | TermGenerator | TermGenerator object used to generate secondary electron source/sink terms based on associated variables in species list and CRM modelbound data. |
CRMVarBoltzTermGenerator | crm_variable_boltzmann_term_generator_class | TermGenerator | TermGenerator object used to generate electron Boltzmann terms with variable inelastic mappings based on associated variables in species list and CRM modelbound data. Assumes that all passed transition indices correspond to variable inlastic mapping transitions. Assumes that the cross-section values in the transitions include any nonlinear normalization dependence (e.g. recombination etc.) |
CustomModelBuilder | custom_model_builder_class | ModelBuilder | Builder for custom models with user defined terms and modelbound data |
CutSineSignal | cut_sine_signal_class | TimeSignal | Periodic signal where in params(1) and params(2) are between 0 and 1. Returns half-sine if params(1)<mod(time,period)<params(2). Otherwise returns 0. |
CVODEIntegrator | cvode_integrator_class | Integrator | |
CVODEOptions | cvode_integrator_class | None | |
D2DV2Derivation | d2dv2_derivation_class | Derivation | Calculates v_o*d(v_i df/dv)/dv, where v_o and v_i are velocity vectors, and f is a distribution. Can return either a distribution or a single harmonic. Assumes that df/dv at v->inf is 0. |
DataCoords | matrix_term_abstract_class | None | Data type used to store global coordinates of any given matrix row |
DBTransition | db_transition_class | Transition | Transition with fixed energy where the cross-section is calculated using SOL-KiT's version of discrete detailed balance |
DDVDerivation | ddv_derivation_class | Derivation | Calculates v_o*d(v_i f)/dv, where v_o and v_i are velocity vectors, and f is a distribution. Can return either a distribution or a single harmonic. Assumes that f at v->inf is 0. |
DDVStencilGenerator | ddv_stencil_gen_class | JaggedArrayGenerator | JaggedArrayGenerator for calculating d/dv type stencils for single harmonics. Automatically includes spatial dependence. Has options for custom velocity grid interpolation of the distribution function and definition of the velocity cell boundary flux in the form C*f where f is the distribution function and C is a custom value. The interpolation weights and C are assumed to be defined on right velocity cell boundaries. Assumes that the velocity stencil is [-1,0,1] |
Derivation | derivation_abstract_class | Object | Abstract derivation object defining the interface for calculating derived variables and data |
DerivationContainer | derivation_abstract_class | None | |
DerivationTerm | derivation_explicit_term_class | ExplicitTerm | Term of the form modelbound variable * derivation result, where the modelbound variable is optional |
DerivedTransition | derived_transition_class | Transition | Transition where the rate is calculated using a derivation object and with a fixed transition energy. Optionally, momentum and energy rates can be calculated using derivation objects |
DiffusionStencilValGenerator | diffusion_stencil_gen_class | JaggedArrayGenerator | JaggedArrayGenerator for calculating a diffusion stencil, optionally using a derivation object to calculate the diffusion coefficient at faces. The default diffusion coefficient is unity. |
ElectronSheathGammaDerivation | sheath_gamma_derivation_class | Derivation | Returns the sheath heat transmission coefficient for electrons depending on electron and ion temperatures in the boundary cell. Assumes the indices are in Te,Ti order |
EnvironmentWrapper | basic_environment_wrapper | Object | EnvironmentWrapper object storing publicly accessible grid, variable, and controller data |
ExplicitRKIntegrator | explicit_rk_integrator_class | Integrator | Explicit Runge-Kutta integrator |
ExplicitTerm | explicit_term_abstract_class | Term | Abstract term providing basic interfaces for build terms used in explicit timestepping |
Extrapolation | extrapolation_abstract_class | Object | Abstract Extrapolation object, responsible for extrapolating fluid quantites onto x grid boundaries |
FBDiffStencilValGenerator | fb_diff_stencil_gen_class | JaggedArrayGenerator | JaggedArrayGenerator for calculating forward or backwards difference stencils. These are two-point stencils of the form [-Jout(i)Jin(i),Jout(i)Jin(i+1)], or [-Jout(i)Jin(i-1),Jout(i)Jin(i)], depending on whether the difference is forward or backwards. Jout and Jin should be defined on the x grid, and should act like the (inverse) Jacobian/Hodge star operator. |
FixedBoltzmannStencilGen | fixed_boltzmann_stencil_gen_class | JaggedArrayGenerator | JaggedArrayGenerator for calculating velocity component of Boltzmann collision operator emissionabsorption terms with fixed inelastic mappings. Expects fixed vStencil derived from the weights matrix if absorption term, otherwise vStencil = [0]. Generates Wvsigma(v) for absorption term or - v*sigma(v) for emission. If cross-section depends on x, it assumes no halo. |
FixedECSTransition | fixed_ecs_transition_class | Transition | Transition object with a fixed transition energy and cross-section, which takes moments of a distribution function to calculate rates |
FlatNDData | flat_nd_data_class | Object | Flat representation of multidimensional data allowing for multidimensional indexing using vector notation - i.e. dataObj%getValue([1,2,3]) = someData(1,2,3). Allows for dimensionality agnostic implementations of various algorithms. |
FlatTree | calculation_tree_class | None | Flattened calculation tree for pointer-safe copying |
FluidStencilGen1D | fluid_gen1d_class | JaggedArrayGenerator | JaggedArrayGenerator for extending the fixed stencil capabilities of StencilGenerator1D to allow for an additional multiplicative dependence on fluid variables in the passed variable container or modelbound data. Allows associating different variables to each column. |
FScalingDerivation | f_scaling_derivation_class | MatDerivation | Extrapolates a distribution function to the boundary or last cell centre as a (numH,numV) matrix. Assumes that there are no m>0 harmonics for staggered grids. Expects 1-4 variables. The first is the extrapolated distribution, the second the density vector. The third is the staggered density if the variables are staggered. The value of the density at the boundary (scalar) is either the third or the fourth variable, and should be present only if extrapolating to the boundary. |
FunWrapperDerivation1I1 | param_wrapper_1i1_derivation_class | Derivation | Wraps single integer parameter and single real array function, passing first index variable as input, optionally multiplying it with a constant before passing |
GeneralMatrixTerm | general_mat_term_class | MatrixTerm | General matrix term with the capability to take in various stencils, time and spaticoordinate profiles, and evaluate other term groups in the host model. Required row and column variables passed through the VarData object are raised to corresponding powers. |
GenIntPolyFunDeriv | gen_int_polynomial_fun_derivation_class | Derivation | Derivation taking in multiple variables and calculating multConst*fun(sum coef_i prod vars^powers) where prod vars^powers is shorthand for a product of multiple variables raised to corresponding powers. Basically behaves like a multiplicative derivation where the inner derivation is a massive sum of simple derivation outputs with integer powers. Implemented to allow AMJUEL rate fit derivations efficiently |
Geometry | geometry_class | Object | Geometry object storing spatial cell widths, cell face and cell centre jacobians, as well as linear interpolation coefficients |
Grid | grid_class | Object | Grid object storing cell positions of x and v grid, as well as Legendre harmonic data of the grid |
GroupEvaluator | group_evaluator_class | Manipulator | Manipulator that evaluates a specific model term group and writes the result into variable with given index |
HatSignal | hat_signal_class | TimeSignal | Periodic signal where in params(1) and params(2) are between 0 and 1. Returns 1 if params(1)<mod(time,period)<params(2). Otherwise returns 0. |
HDF5Controller | hdf5_controller_class | Object | Controller object responsible for HDF5 IO |
HExtractorDerivation | harmonic_extractor_derivation_class | Derivation | Extracts target harmonic from distribution variable |
IJIntDerivation | ij_int_derivation_class | Derivation | Calculates the Shkarofsky I or J integrals for each passed harmonic. |
Indexing | indexing_class | Object | Indexing object containing local and global indexing rules |
InelasticGridData | inelastic_grid_data_class | Object | Object responsible for storing inelastic mapping matrices, determining active emitter cels, and interpolating variable energy mapping matrices |
IntArray | support_types | None | Array of integer values |
Integrator | integrator_abstract_class | Manipulator | Abstract Integrator object |
IntegratorCallStep | composite_integrator_class | None | Object containing data pertaining to single integration step |
IntegratorContainer | composite_integrator_class | None | Container allowing for heterogeneous Integrator arrays |
InternalControllerOptions | implicit_PicardBDE_integrator_class | None | |
Interpolation1D | lin_interp1D_class | Object | Linear interpolation object housing information necessary for linearly interpolating 1D data. Will fail assertsion if interpolation points are outside of the grid. |
InterpolationDerivation | interpolation_derivation_class | Derivation | Derivation that interpolates a variable from the original to the dual grid, or vise versa. Distributions are interpolated by assuming that even l harmonics live on the original grid and odd harmonics on the dual grid. |
InterpolationND | lin_interpnd_class | Object | Linear interpolation object housing information necessary for linearly interpolating N-dimensional data using weighted averages. If interpolation points are outside of the grid will return 0 for interpolated value. NOTE: Does not support changing the number of interpolation points after the first interpolation call. |
InterpStencilGenerator | interp_stencil_gen_class | JaggedArrayGenerator | JaggedArrayGenerator for calculating implicit interpolation stencil between regular and staggered grids. Expects that the xStencil is [0,1] for regular to staggered grid interpolation, and [-1,0] for staggered to regular. If non-periodic and going from staggered to regular the values are implicitly extrapolated to the first and last cell centres from the edges leading up to the boundary. In this case the generator expects that the left boundary stencil is overriden with [0,1] and the right stencil with [-2,-1] |
JaggedArrayGenerator | jagged_array_generator_class | Object | JaggedArrayGenerator object for calculating jagged real arrays based on variable data |
JSONController | json_controller_class | None | Object responsible for reading and writing to JSON files |
LinExtrapolation | lin_extrapolation_class | Extrapolation | Linear extrapolation object |
LocValExtractorDerivation | loc_val_extractor_derivation_class | Derivation | Extracts target location value from a fluid variable as a scalar variable. Expects a single input. |
LogExtrapolation | log_extrapolation_class | Extrapolation | Linear extrapolation object |
LogicalArray | support_types | None | Array of logical values |
Manipulator | manipulator_abstract_class | Object | Abstract Manipulator object used to manipulate data through Modeller callback |
ManipulatorContainer | manipulator_abstract_class | None | |
MatDerivation | mat_derivation_abstract_class | Object | Abstract derivation object defining the interface for calculating dense matrix quantities |
MatDerivationContainer | mat_derivation_abstract_class | None | |
MatrixTerm | matrix_term_abstract_class | Term | Abstract matrix term containing general matrix construction routines and interface with PETSc. The values of a matrix are by default constructed by evaluating row and column functions for each element, and multiplying with the corresponding multiplicative and normalization constants |
MatrixTermIndexingData | matrix_term_abstract_class | None | Indexing data used by the matrix term |
MatTermContainer | model_class | None | Container allowing for heterogeneous matrix term arrays |
MaxwellianDerivation | maxwellian_derivation_class | Derivation | Calculates Maxwellian distribution. Expects temperature and density indices (in that order), and assumes velocity is normalized to electron thermal speed. |
Model | model_class | ModelSurrogate | Object storing, evaluating, and manipulating various term objects, with terms categorized as either implicit (MatrixTerm objects) or general (Term objects). |
ModelboundCRMData | modelbound_CRM_data_class | ModelboundData | Object responsible for storing and providing centralized access to transition objects and, optionally, inelastic grid data |
ModelboundData | modelbound_data_abstract_class | Object | Abstract general modelbound data object used to build classes that contain data for updating terms |
ModelboundDataExtractor | modelbound_data_extractor_class | Manipulator | Manipulator that extracts a (rank 1!) modelbound data variable from a model into a variable |
ModelboundDataVarlike | modelbound_data_varlike_class | ModelboundData | Modelbound data object containing variable-like data updated using a variable container |
ModelboundLBCData | modelbound_lbc_data_class | ModelboundData | Modelbound data object containing data used to construct kinetic logical boundary condition. Assumes no m>0 harmonics. Assumes standard normalization. Data accessible through standard data copy routine: "gamma" - sheath heat transmission coefficient "potential" - potential drop at sheath normalized to boundary temperature "coVel" - cut-off velocity "shTemp" - sheath temperature obtained using the cut-off distribution |
ModelBuilder | model_builder_abstract_class | Object | Abstract ModelBuilder object, housing basic functionality for the construction of Model objects and passing those objects to their final Modeller destination |
ModelContainer | modeller_class | None | Container for Model objects allowing heterogeneous arrays |
Modeller | modeller_class | ModellerSurrogate | Central object responsible for storing variables and models, as well as doing integration and data manipulation |
ModellerSurrogate | modeller_surrogate_class | Object | |
ModelSurrogate | model_surrogate_class | Object | |
MomentDerivation | moment_derivation_class | Derivation | Moment derivation object. First step in derivation is taking the mOrder-th moment of the h-th harmonic of the first passed variable (assumes that it is a distribution), optionally multiplied by constant velocity space vector g. The results is then optionally multiplied by a constant and a product of fluid variables raised to powers (as in SimpleDerivation). |
MPIController | mpi_controller_class | Object | Provides a centralized interface with MPI and various support routines compatible with ReMKiT1D needs |
MultiplicativeDerivation | multiplicative_derivation_class | Derivation | Composite derivation class containing two calculation rules applied additively. Both derivations must return same length array. Optionally applies one of several intrinsic functions to "inner" derivation result before multiplication. |
MultiplicativeGeneratorCore | multiplicative_generator_core_class | Object | Provides capability of building stencil value objects based on tensor products of individual stencil value array |
MultiplicativeStencilGen | multiplicative_stencil_generator_class | JaggedArrayGenerator | Generates stencil values based on independent data for x,h,v dimensions |
NamedArrayContainer | support_types | None | Container with named arrays of integers, reals, logicals, and strings |
NamedInteger | support_types | None | Named integer value |
NamedIntegerArray | support_types | None | Named integer array |
NamedLogical | support_types | None | Named logical value |
NamedLogicalArray | support_types | None | Named logical value array |
NamedReal | support_types | None | Named real value |
NamedRealArray | support_types | None | Named real value array |
NamedScalarContainer | support_types | None | Container with arrays on named integers, reals, logicals, and strings |
NamedString | support_types | None | Named string |
NamedStringArray | support_types | None | Named array of strings |
NDInterpolationDerivation | lin_interpnd_derivation_class | Derivation | Interpolates n-dimensional data linearly based on n-input variables (must all be the same length) |
Normalization | normalization_abstract_class | Object | Abstract normalization object providing access routines |
Object | god_objects | None | Base object class used to determine whether complex objects have been properly initialized |
Operator | operator_abstract_class | Object | Abstract operator class for use in explicit terms to transform real arrays |
Partition | partition_class | Object | Object responsible for storing the x-h domain decomposition |
PETScController | petsc_controller_class | Object | Object responsible for interfacing with PETSc |
PETScPreallocationData | petsc_preallocation_data_class | Object | Object used to properly preallocate PETSc matrices |
PETSsObjs | petsc_controller_class | None | |
PicardBDEIntegrator | implicit_PicardBDE_integrator_class | Integrator | Implicit Backwards Euler integrator with Picard iterations for handling non-linearities |
PolyFunDeriv | polynomial_fun_derivation_class | Derivation | Derivation taking in a single variable v and returning c0 + sum(c_ivp_i), where p are powers and c polynomial coefficents, Can optionally take as many conforming variables as there are coefficients and return c0 + sum(c_iv_i**p_i) |
RangeFilterDerivation | range_filter_derivation_class | Derivation | Composite derivation class containing a single calculation rule, which is overriden with zeros wherever any one in a set of control variables is outside their defined range. If derivIndices isn't passed will pass all indices to the derivation. |
RealArray | support_types | None | Array of real values |
RealArrayD2 | support_types | None | Real array of depth 2 |
ScalingLBCStencilGen | scaling_lbc_stencil_gen_class | JaggedArrayGenerator | JaggedArrayGenerator for calculating logical boundary condition for electron distribution function. Contains x,h,v dependencies. Expects xStencil = [0] or [-1], depending on whether the boundary is left or right, and whether variables are staggered. The hStencil should cover all harmonics and assumes no m>0 harmonics. Expects vStencil = [0,1]. Calculates v*f_{cl}, without taking the x width or boundary sign into account. |
SignalCollection | signal_collection_class | Object | Object storing named signals |
SignalContainer | signal_collection_class | None | Container object for signal types |
SimpleDerivation | simple_derivation_class | Derivation | Simple derivation object assuming all variables are confroming. Just multiplies the input array entries and raises them to set powers. Optionally multiplies the result with a constant. |
SimpleTimestepController | simple_timestep_controller_class | TimestepController | Timestep controller that calculates the timestep using the min (max) value of a product of variables raised to corresponding powers. Variables are assumed fluid-like. |
SimpleTransition | simple_transition_class | Transition | Simple transition object with a fixed rate and energy, and single ingoing and outgoing state. The default energy rate is set to rate*energy, and the momentum rate is 0 |
SolverOptions | petsc_controller_class | None | Contains data used by the PETSc ksp solver to set various options (refer to PETSc manual) |
SparseRowData | sparse_row_data_class | Object | Sparse row matrix representation |
Species | species_class | Object | Base species class containing particle properties and associated variable names |
SpeciesList | species_list_class | Object | Species list object providing centralized access and initialization of species objects |
Stencil | stencil_class | Object | Stencil object for construction of matrix patterns by mapping row coordinates to sets of column coordinates |
Stencil1D | stencil1d_class | Object | 1D stencil component for global stencil construction |
StencilGenerator1D | stencil_generator1d_class | JaggedArrayGenerator | JaggedArrayGenerator for calculating a fixed stencil based on fixed column-wise value vectors and a Stencil1D object. Each column value vector is associated with its entry in the Stencil1D object. |
StencilTemplate | general_mat_term_class | None | |
StringArray | support_types | None | Array of character arrays (a string) |
Term | term_abstract_class | Object | General abstract term object |
TermContainer | model_class | None | Container allowing for heterogeneous general term arrays |
TermEvaluator | term_evaluator_class | Manipulator | Manipulator that evaluates a specific model,term pairs and writes the total result into variable with given index Optionally accumulates the values in the variable instead of overriding them. Optionally performs its own update calls on the models/terms |
TermGenerator | term_generator_abstract_class | Object | Abstract TermGenerator object, responsible for automatic generation of terms |
TermGeneratorContainer | term_generator_abstract_class | None | Container object for term generators |
TermMomentStencilGenerator | term_moment_stencil_gen_class | JaggedArrayGenerator | JaggedArrayGenerator for calculating moment terms based on taking velocity moments of other kinetic terms. The term whose moment is taken is expected to be evolving a single harmonic of a distribution variable and have a diagonal spatial stencil. If the implcit variable is a distribution, the spatial stencil must be strictly diagonal (no interpolation allowed). |
Textbook | textbook_class | Object | Object storing named derivations |
Timeloop | basic_timeloop_class | Object | Object responsible for the main integration loop |
TimeSignal | signal_abstract_class | None | Abstract signal class wrapping explicit time dependence. NOTE: Not meant to be initializable, hence not an object |
TimeSignalData | signal_abstract_class | None | Container for time signal data used tu inject explicit time dependence |
TimestepController | timestep_controller_abstract_class | Object | Abstract timestep controller object |
Transition | transition_abstract_class | Object | Represents a process in which an ingoing set of particles(states) is transformed into an outgoing set and to which quantities representing particle/momentum/energy exchange rates can be meaningfully assigned. Optionally, a Transition can have a cross-section object of rank 2 to accommodate anisotropic differential cross-sections. |
TransitionContainer | modelbound_CRM_data_class | None | Container allowing for heterogeneous Transition object arrays |
UWCBCStencilValGenerator | uwc_bc_stencil_gen_class | JaggedArrayGenerator | JaggedArrayGenerator for calculating a flux-like boundary condition stencil. Can take 2 variable indices, one for a flux jacobian variable and the other for a lower jacobian bound variable. If the flux jacobian is present it is extrapolated to the boundary and the stencil multiplied by it. If the lower jacobian bound variable is present it is extrapolated to the boundary and substituted for the flux jacobian if the jacobian's projection to the boundary surface normal is smaller than the lower bound variable. If setting extrapolate to true the stencils will extrapolate the implicit/column variables as well. The stencil is assumed to either be [0,-1] for right boundary or [0,1] for left boundary. Will return size(0) stencil if the current processor does not contain the corresponding boundary. |
UWCDiffStencilValGenerator | uwc_diff_stencil_gen_class | JaggedArrayGenerator | JaggedArrayGenerator for calculating an upwinding or central difference stencil based on interpolation to cell faces. Optionally interpolates a variable with given index in variable container. Interpolation variable required in upwinding mode. |
VarData | general_mat_term_class | None | Container for common data used to initialize general matrix terms |
VariableBoltzmannStencilGen | variable_boltzmann_stencil_gen_class | JaggedArrayGenerator | JaggedArrayGenerator for calculating velocity component of Boltzmann collision operator emission/absorption terms with variable inelastic mappings. Expects upper/lower triangular vStencil (depending on energy sign), otherwise vStencil = [0]. Generates Wvsigma(v) for absorption term or - v*sigma(v) for emission. Assumes no halo in cross-section. |
VariableContainer | variable_container_class | Object | Container for variable data, allows for handling conversion between local data storage and flattened vectors used for PETSc NOTE: Does not support single harmonic variables |
VariableECSTransition | variable_ecs_transition_class | Transition | Transition where the transition energy and cross-section are derived |
VariableList | variable_list_class | Object | Contains a list of variable names and records whether they are distribution functions |
VDiffStencilGen | v_diffusion_stencil_gen_class | JaggedArrayGenerator | JaggedArrayGenerator for calculating d(Ad/dv)/dv type stencils. Formally a d/dv term where the flux is A*df/dv where df/dv at cell edge n+1/2 is (f_{n+1}-f_{n})/(v_{n+1}-v_{n}). A is assumed to be defined on right velocity cell boundaries. Assumes that the velocity stencil is [-1,0,1] |
VelContracDerivation | vel_contraction_derivation_class | Derivation | Derivation that calculates the contraction of velocity vector g with h'th harmonic of single passed distribution variable |
VelTProdDerivation | vel_tensor_prod_derivation_class | Derivation | Derivation that calculates the flattened tensor product of vector v with a fluid variable, optionally shifting v by a second fluid variable and raising the shifted values to a power |
VSpace | v_space_class | Object | Object responsible for taking velocity moments of distributions and other velocity grid manipulation |