/* * gammas.h - all the routines to evaluate gamma functions * contains the following: * * GammaBn evaluate photoionization rate for single shell with induced recomb * GammaBnPL evaluate photoionization rate for single shell with induced recomb * GammaPrt special version of gamma function to print strong contributors * GammaK evaluate photoionization rate for single shell * GammaPL evaluate photoionization rate for power law photo cross section */ /*GammaBn evaluate photoionization rate for single shell with induced recomb */ double GammaBn(long int n1, long int n2, long int ip, double thresh, double *ainduc, double *rcool); /*GammaPrt special version of gamma function to print strong contributors */ void GammaPrt(long int n1, long int n2, long int ip, FILE * io, /* io unit we will write to */ double total, double threshold); /*GammaK evaluate photoionization rate for single shell */ double GammaK(long int n1, long int n2, long int ipOpac, double yield1); /*GammaPL evaluate photoionization rate for power law photo cross section */ double GammaPL(long int n, long int ipZ)/* ipZ = 0 for H */; /*GammaBnPL evaluate photoionization rate for single shell with induced recomb */ double GammaBnPL(long int n, long int ipZ, /* 0 for H, etc */ double *ainduc, double *rcool); /* GammaPrtRate will print resulting rates for ion and element */ void GammaPrtRate( /* io unit we will write to */ FILE * ioFILE, /* stage of ionization on C scale, 0 for atom */ long int ion , /* 0 for H, etc */ long int ipZ);