criptic v1
Cosmic Ray Interstellar Propagation Tool using Itô Calculus
Loading...
Searching...
No Matches
Classes | Namespaces | Enumerations | Functions
FieldQty.H File Reference

Define classes for field quantities and their gradients. More...

#include <array>
#include <string>
#include <vector>
#include "CRPacket.H"
#include "../Definitions.H"
#include "../Utils/Constants.H"
#include "../Utils/RealTensor2.H"
#include "../Utils/Types.H"
#include "../Utils/Units.H"
#include "../Utils/Vec3.H"

Go to the source code of this file.

Classes

class  criptic::FieldQty
 Class to hold and compute field quantities. More...
 
class  criptic::FieldQtyGrad
 Class to hold and compute gradients of field quantities. More...
 

Namespaces

namespace  criptic
 The primary namespace for criptic objects.
 

Enumerations

enum  criptic::FieldQtyType { criptic::ndenIdx = 0 , criptic::presIdx , criptic::edenIdx , criptic::nFieldQty }
 Enum of field quantities. More...
 

Functions

criptic::FieldQty criptic::operator* (const criptic::Real a, const criptic::FieldQty &fq)
 Multiply a scalar by a FieldQty elementwise.
 
criptic::FieldQty criptic::min (const criptic::FieldQty &q1, const criptic::FieldQty &q2)
 Take elementwise minimum of two FieldQty objects.
 
criptic::FieldQty criptic::max (const criptic::FieldQty &q1, const criptic::FieldQty &q2)
 Take elementwise maximum of two FieldQty objects.
 
criptic::FieldQtyGrad criptic::operator* (const criptic::Real a, const criptic::FieldQtyGrad &fqg)
 Multiply a scalar by a FieldQtyGrad elementwise.
 
criptic::FieldQtyGrad criptic::operator* (const criptic::RealVec &a, const criptic::FieldQtyGrad &fqg)
 Multiply a RealVec by a FieldQtyGrad elementwise.
 
criptic::FieldQtyGrad criptic::min (const criptic::FieldQtyGrad &q1, const criptic::FieldQtyGrad &q2)
 Take elementwise minimum of two FieldQtyGrad objects.
 
criptic::FieldQtyGrad criptic::max (const criptic::FieldQtyGrad &q1, const criptic::FieldQtyGrad &q2)
 Take elementwise maximum of two FieldQtyGrad objects.
 
std::istream & operator>> (std::istream &is, criptic::FieldQty &fQ)
 ASCII-formatted read of field quantities from stream.
 
std::istream & operator>> (std::istream &is, criptic::FieldQtyGrad &fQG)
 ASCII-formatted read of field quantities from stream.
 
std::ostream & operator<< (std::ostream &os, const criptic::FieldQty &fQ)
 ASCII-formatted write of field quantities to stream.
 
std::ostream & operator<< (std::ostream &os, const criptic::FieldQtyGrad &fQG)
 ASCII-formatted write of field quantities to stream.
 

Detailed Description

Define classes for field quantities and their gradients.

In criptic, "field quantities" are quantities that can be computed from the CR field, for example the CR number density, energy density, or pressure. This module provides two classes, FieldQty and FieldQtyGrad, which define field quantities and their gradients.

Function Documentation

◆ operator<<() [1/2]

std::ostream & operator<< ( ostream &  os,
const FieldQty fQ 
)

ASCII-formatted write of field quantities to stream.

Parameters
osThe stream to write to
fQThe FieldQty object to be written
Returns
The output stream written to

◆ operator<<() [2/2]

std::ostream & operator<< ( ostream &  os,
const FieldQtyGrad fQG 
)

ASCII-formatted write of field quantities to stream.

Parameters
osThe stream to write to
fQGThe FieldQtyGrad object to be written
Returns
The output stream written to

◆ operator>>() [1/2]

std::istream & operator>> ( istream &  is,
FieldQty fQ 
)

ASCII-formatted read of field quantities from stream.

Parameters
isThe stream to read from
fQThe FieldQty object in which to store the result
Returns
The processed input stream

◆ operator>>() [2/2]

std::istream & operator>> ( istream &  is,
FieldQtyGrad fQG 
)

ASCII-formatted read of field quantities from stream.

Parameters
isThe stream to read from
fQGThe FieldQtyGrad object in which to store the result
Returns
The processed input stream