VERB_code_2.2  2
 All Classes Namespaces Files Functions Variables Typedefs Macros Pages
DiffusionCoefficient.cpp File Reference
#include "DiffusionCoefficient.h"
#include <math.h>
#include <vector>
#include "rroots.h"
#include "../VariousFunctions/bisection.h"
#include "../Logging/Output.h"
#include "../Exceptions/error.h"
#include <ctime>

Go to the source code of this file.

Macros

#define double_zero   1.e-21
 
#define min_Dxx   1.e-21
 

Functions

double Alpha_ne (double pangle, double lambda, double L)
 
double f1 (double lambda)
 
double B (double lambda, double L)
 
double func_tmp (double x, double Alpha)
 
double F_cap (double x, double y, double b, double s, double epsilon, DxxParameters_structure DxxParameters)
 
double F_cap2 (double x, double y, double a, double beta, double mu, double s, double epsilon, double Alpha_star, DxxParameters_structure DxxParameters)
 
double quad1 (double(*func)(double lambda, DxxParameters_structure DxxParameters), double a, double b, int M, DxxParameters_structure DxxParameters)
 
double Dxx_ba (double L1, double EMeV, double Alpha, double int_Dxx_loc(double lambda, DxxParameters_structure DxxParameters), DxxParameters_structure DxxParameters)
 
double int_Daa_loc (double lambda, DxxParameters_structure DxxParameters)
 
double int_Dpp_loc (double lambda, DxxParameters_structure DxxParameters)
 
double int_Dpa_loc (double lambda, DxxParameters_structure DxxParameters)
 
double Dxx_local (double lambda, double Dxx_root(double Omega_e, double x, double mu, double su, double y, double beta, double a, double b, double Alpha_star, double s, double epsilon, double d_x, double x_m, double R, DxxParameters_structure DxxParameters), DxxParameters_structure DxxParameters)
 
double Daa_root (double Omega_e, double x, double mu, double su, double y, double beta, double a, double b, double Alpha_star, double s, double epsilon, double d_x, double x_m, double R, DxxParameters_structure DxxParameters)
 
double Dpa_root (double Omega_e, double x, double mu, double su, double y, double beta, double a, double b, double Alpha_star, double s, double epsilon, double d_x, double x_m, double R, DxxParameters_structure DxxParameters)
 
double Dpp_root (double Omega_e, double x, double mu, double su, double y, double beta, double a, double b, double Alpha_star, double s, double epsilon, double d_x, double x_m, double R, DxxParameters_structure DxxParameters)
 
std::vector< double > rrouts (double x_1, double x_2, double eta1, double eta2, double eta3, double epsilon, double beta, double mu, double Alpha_star, double a, DxxParameters_structure DxxParameters)
 routs finding routine More...
 
double Df (double L, double Kp)
 Radial Diffusion coeficeint computed following [Brautigam and Albet , 2000]. More...
 
double Df_Ozeke (double L, double Kp)
 Radial Diffusion coeficeint computed Ozeke,. More...
 
double Df_Ozeke_E (double L, double Kp)
 DLL_E. More...
 
void CreateAllDiffusionCoefficients (DiffusionCoefficient &DLL, DiffusionCoefficientsGroup &Daa, DiffusionCoefficientsGroup &Dpcpc, DiffusionCoefficientsGroup &Dpca, DiffusionCoefficientsGroup &DaaLpp, DiffusionCoefficientsGroup &DpcpcLpp, DiffusionCoefficientsGroup &DpcaLpp, Parameters_structure &parameters, Grid &radialDiffusionGrid, Grid &localDiffusionsGrid)
 
void Output1DHeaders (ofstream &output1D, DiffusionCoefficientsGroup &Daa, DiffusionCoefficientsGroup &Dpcpc, DiffusionCoefficientsGroup &Dpca, DiffusionCoefficientsGroup &DaaLpp, DiffusionCoefficientsGroup &DpcpcLpp, DiffusionCoefficientsGroup &DpcaLpp)
 Function used in main() to print header in output file. Header needs to unserstand the output file. More...
 
void Output1DValues (ofstream &output1D, DiffusionCoefficientsGroup &Daa, DiffusionCoefficientsGroup &Dpcpc, DiffusionCoefficientsGroup &Dpca, DiffusionCoefficientsGroup &DaaLpp, DiffusionCoefficientsGroup &DpcpcLpp, DiffusionCoefficientsGroup &DpcaLpp, double &time, Parameters_structure &parameters, int iteration)
 Function used in main() to print values of diffusion coefficients in output file. More...
 

Detailed Description

Diffusion coefficients calculation, loading, activating, scaling etc code

Author
Developed by Yuri Shprits

Definition in file DiffusionCoefficient.cpp.

Macro Definition Documentation

#define double_zero   1.e-21

Definition at line 23 of file DiffusionCoefficient.cpp.

#define min_Dxx   1.e-21

Definition at line 24 of file DiffusionCoefficient.cpp.

Function Documentation

double Alpha_ne ( double  pangle,
double  lambda,
double  L 
)

Definition at line 514 of file DiffusionCoefficient.cpp.

References f1().

double f1 ( double  lambda)

Definition at line 518 of file DiffusionCoefficient.cpp.

double B ( double  lambda,
double  L 
)

Definition at line 522 of file DiffusionCoefficient.cpp.

References VC::B_0, and f1().

double func_tmp ( double  x,
double  Alpha 
)

Definition at line 526 of file DiffusionCoefficient.cpp.

double F_cap ( double  x,
double  y,
double  b,
double  s,
double  epsilon,
DxxParameters_structure  DxxParameters 
)

Definition at line 530 of file DiffusionCoefficient.cpp.

double F_cap2 ( double  x,
double  y,
double  a,
double  beta,
double  mu,
double  s,
double  epsilon,
double  Alpha_star,
DxxParameters_structure  DxxParameters 
)
double quad1 ( double(*)(double lambda, DxxParameters_structure DxxParameters)  func,
double  a,
double  b,
int  M,
DxxParameters_structure  DxxParameters 
)

Definition at line 546 of file DiffusionCoefficient.cpp.

double Dxx_ba ( double  L1,
double  EMeV,
double  Alpha,
double   int_Dxx_locdouble lambda, DxxParameters_structure DxxParameters,
DxxParameters_structure  DxxParameters 
)
double int_Daa_loc ( double  lambda,
DxxParameters_structure  DxxParameters 
)
double int_Dpp_loc ( double  lambda,
DxxParameters_structure  DxxParameters 
)
double int_Dpa_loc ( double  lambda,
DxxParameters_structure  DxxParameters 
)
double Daa_root ( double  Omega_e,
double  x,
double  mu,
double  su,
double  y,
double  beta,
double  a,
double  b,
double  Alpha_star,
double  s,
double  epsilon,
double  d_x,
double  x_m,
double  R,
DxxParameters_structure  DxxParameters 
)
double Dpa_root ( double  Omega_e,
double  x,
double  mu,
double  su,
double  y,
double  beta,
double  a,
double  b,
double  Alpha_star,
double  s,
double  epsilon,
double  d_x,
double  x_m,
double  R,
DxxParameters_structure  DxxParameters 
)
double Dpp_root ( double  Omega_e,
double  x,
double  mu,
double  su,
double  y,
double  beta,
double  a,
double  b,
double  Alpha_star,
double  s,
double  epsilon,
double  d_x,
double  x_m,
double  R,
DxxParameters_structure  DxxParameters 
)
std::vector<double> rrouts ( double  x_1,
double  x_2,
double  eta1,
double  eta2,
double  eta3,
double  epsilon,
double  beta,
double  mu,
double  Alpha_star,
double  a,
DxxParameters_structure  DxxParameters 
)

routs finding routine

Definition at line 764 of file DiffusionCoefficient.cpp.

References double_zero, get_quads(), roots(), and DxxParameters_structure::s.

double Df ( double  L,
double  Kp 
)

Radial Diffusion coeficeint computed following [Brautigam and Albet , 2000].

Definition at line 832 of file DiffusionCoefficient.cpp.

double Df_Ozeke ( double  L,
double  Kp 
)

Radial Diffusion coeficeint computed Ozeke,.

DLL_B [days^-1]

Definition at line 840 of file DiffusionCoefficient.cpp.

double Df_Ozeke_E ( double  L,
double  Kp 
)

DLL_E.

Definition at line 846 of file DiffusionCoefficient.cpp.

void Output1DHeaders ( ofstream &  output1D,
DiffusionCoefficientsGroup Daa,
DiffusionCoefficientsGroup Dpcpc,
DiffusionCoefficientsGroup Dpca,
DiffusionCoefficientsGroup DaaLpp,
DiffusionCoefficientsGroup DpcpcLpp,
DiffusionCoefficientsGroup DpcaLpp 
)

Function used in main() to print header in output file. Header needs to unserstand the output file.

Writing headers for all diffusion coefficients scaling coefficients

Parameters
output1D- output stream to file
Daa- Pitch-angle D. all other parameters - is a type of diffusion coefficients (DiffusionCoefficientsGroup). To file - Dxx.DxxList[Dxx_it].arr.name
Dpcpc- Energy D
Dpca- Mix pitch-angle and energy.
DaaLpp- ???
DpcpcLpp- ???
DpcaLpp- ???

Definition at line 989 of file DiffusionCoefficient.cpp.

References DiffusionCoefficientsGroup::DxxList.

void Output1DValues ( ofstream &  output1D,
DiffusionCoefficientsGroup Daa,
DiffusionCoefficientsGroup Dpcpc,
DiffusionCoefficientsGroup Dpca,
DiffusionCoefficientsGroup DaaLpp,
DiffusionCoefficientsGroup DpcpcLpp,
DiffusionCoefficientsGroup DpcaLpp,
double &  time,
Parameters_structure parameters,
int  iteration 
)

Function used in main() to print values of diffusion coefficients in output file.

Write information about 1d variables into the file with 1d variables

Parameters
output1D- output stream to file
Daa- Pitch-angle D. all other parameters - is a type of diffusion coefficients (DiffusionCoefficientsGroup). To file - Dxx.DxxList[Dxx_it].arr.name
Dpcpc- Energy D
Dpca- Mix pitch-angle and energy.
DaaLpp- ???
DpcpcLpp- ???
DpcaLpp- ???
time- current simulation time
parameters- (Parameters_structure) structure with all parameters from ini files and loaded/calcaulated parameters such as Kp and UpperBoubdary?
iteration- Number of current iteration of the simulation

Definition at line 1022 of file DiffusionCoefficient.cpp.

References Parameters_structure::Bf, DiffusionCoefficientsGroup::DxxList, Parameters_structure::Kp, Parameters_structure::Lpp, and Parameters_structure::tau.