Streamer fluid modeling - An overview of ARCoS  1.0
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Functions | Variables
photo.c File Reference

Routines for the calculation of the photoionization source term. More...

#include <stdlib.h>
#include <stdio.h>
#include <math.h>
#include "cdr.h"
#include "interpol2.h"
#include "mapper.h"
#include "parameters.h"
#include "photo.h"
#include "poisson.h"
#include "proto.h"
#include "rz_array.h"
#include "species.h"
Include dependency graph for photo.c:

Go to the source code of this file.

Functions

void photo_copy (mapper_t *mapper, grid_t *source, grid_t *target, int ir, int iz, int itheta)
 Copies the photoionization QQQQ?
 
void photo_coarsen (mapper_t *mapper, grid_t *source, grid_t *target, int ir, int iz, int itheta)
 Coarsens the photoionization QQQQ?
 
int photo_interpol_set (mapper_t *mapper, grid_t *source, interpol_t *interpol, int pr, int pz, int itheta)
 photo_interpol_set QQQQ?
 
void photo_interpol (mapper_t *mapper, grid_t *source, grid_t *target, interpol_t *interpol, int ir, int iz, int itheta)
 photo_interpol QQQQ?
 
void photo_init ()
 Initializes photoionization QQQQ?
 
void photo_register (double A, double lambda)
 Registers a photoionization term with given A and lambda.
 
void photo_copy_list (photo_term_t *src, photo_term_t **dest)
 Copies a list of photo terms into *dest.
 
void photo_unregister_all (void)
 Unregisters all the photoionization terms and frees the allocated space.
 
void photo_dft_r (cdr_grid_t *grid, int sign)
 Transforms back the photoionization calculation into real space.
 
void photo_copy_source (cdr_grid_t *grid)
 Copies the derivative of the ion density into cdr->charge.
 
 mk_recursive (photo_copy_source, cdr_grid_t)
 Recursive version of photo_copy_source.
 
void photo_add_term_r (photo_term_t *term, cdr_grid_t *cdr)
 ...and the recursive version of photo_add_term
 
pois_grid_t ** photo_calc_term (photo_term_t *term, cdr_grid_t *cdr, int i)
 photo_calc_term QQQQ
 
void photo_calc (photo_term_t *terms, cdr_grid_t *cdr)
 Calculates the photoionization and adds it to the derivatives of the species densities.
 
void photo_load_file (char *fname)
 Loads a photoionization file, consisting in a series of rows with A and lambda.
 

Variables

photo_term_tphoto_terms = NULL
 
mapper_t photo_mapper
 
mapper_tphoto_mappers [] = {&photo_mapper, NULL}
 
pois_problem_tpois_photo_1
 
pois_problem_tpois_photo_2
 
pois_problem_tpois_electrostatic
 

Detailed Description

Routines for the calculation of the photoionization source term.

We use the Helmholtz approximation for the kernel in the photoionization integral and we use the routines of the Poisson solver for the Helmholtz equation (FISHPACK was modified to take a new inhomogeneous term into account).

Definition in file photo.c.

Function Documentation

void photo_copy ( mapper_t mapper,
grid_t source,
grid_t target,
int  ir,
int  iz,
int  itheta 
)

Copies the photoionization QQQQ?

Definition at line 92 of file photo.c.

void photo_coarsen ( mapper_t mapper,
grid_t source,
grid_t target,
int  ir,
int  iz,
int  itheta 
)

Coarsens the photoionization QQQQ?

Definition at line 106 of file photo.c.

Here is the call graph for this function:

int photo_interpol_set ( mapper_t mapper,
grid_t source,
interpol_t interpol,
int  pr,
int  pz,
int  itheta 
)

photo_interpol_set QQQQ?

Definition at line 137 of file photo.c.

Here is the call graph for this function:

void photo_interpol ( mapper_t mapper,
grid_t source,
grid_t target,
interpol_t interpol,
int  ir,
int  iz,
int  itheta 
)

photo_interpol QQQQ?

Definition at line 157 of file photo.c.

Here is the call graph for this function:

void photo_init ( )

Initializes photoionization QQQQ?

Definition at line 48 of file photo.c.

Here is the call graph for this function:

Here is the caller graph for this function:

void photo_register ( double  A,
double  lambda 
)

Registers a photoionization term with given A and lambda.

Definition at line 174 of file photo.c.

Here is the call graph for this function:

Here is the caller graph for this function:

void photo_copy_list ( photo_term_t src,
photo_term_t **  dest 
)

Copies a list of photo terms into *dest.

Definition at line 189 of file photo.c.

Here is the call graph for this function:

Here is the caller graph for this function:

void photo_unregister_all ( void  )

Unregisters all the photoionization terms and frees the allocated space.

Definition at line 218 of file photo.c.

Here is the caller graph for this function:

void photo_dft_r ( cdr_grid_t grid,
int  sign 
)

Transforms back the photoionization calculation into real space.

Definition at line 232 of file photo.c.

Here is the call graph for this function:

Here is the caller graph for this function:

void photo_copy_source ( cdr_grid_t grid)

Copies the derivative of the ion density into cdr->charge.

The ion density, which is supposed to be at this point, the impact ionization) into cdr->charge, which will be used as the source for the Poisson/Helmholtz solver.

Definition at line 252 of file photo.c.

mk_recursive ( photo_copy_source  ,
cdr_grid_t   
)

Recursive version of photo_copy_source.

Definition at line 270 of file photo.c.

void photo_add_term_r ( photo_term_t term,
cdr_grid_t cdr 
)

...and the recursive version of photo_add_term

Definition at line 301 of file photo.c.

Here is the call graph for this function:

Here is the caller graph for this function:

pois_grid_t** photo_calc_term ( photo_term_t term,
cdr_grid_t cdr,
int  i 
)

photo_calc_term QQQQ

Definition at line 314 of file photo.c.

Here is the call graph for this function:

Here is the caller graph for this function:

void photo_calc ( photo_term_t terms,
cdr_grid_t cdr 
)

Calculates the photoionization and adds it to the derivatives of the species densities.

Definition at line 327 of file photo.c.

Here is the call graph for this function:

Here is the caller graph for this function:

void photo_load_file ( char *  fname)

Loads a photoionization file, consisting in a series of rows with A and lambda.

Definition at line 365 of file photo.c.

Here is the call graph for this function:

Here is the caller graph for this function:

Variable Documentation

photo_term_t* photo_terms = NULL

Definition at line 35 of file photo.c.

mapper_t photo_mapper
Initial value:

Definition at line 37 of file photo.c.

mapper_t* photo_mappers[] = {&photo_mapper, NULL}

Definition at line 40 of file photo.c.

pois_problem_t* pois_photo_1

Definition at line 42 of file photo.c.

pois_problem_t* pois_photo_2

Definition at line 43 of file photo.c.

pois_problem_t* pois_electrostatic

Definition at line 82 of file poisson.c.