⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ultrasp6.c

📁 this is a gcc file, you can download it and learn its usetility, for further detail please look at t
💻 C
字号:
/* PR target/7784 *//* Originator: Peter van Hoof <p.van-hoof@qub.ac.uk> *//* { dg-do compile { target sparc-*-* } } *//* { dg-options "-O2 -mcpu=ultrasparc" } */typedef struct{  float EnergyErg;  float ots;} EmLine;extern const int ipH_LIKE ;extern const int ipHYDROGEN ;extern const int ipH1s;extern const int ipH2s;extern const int ipH2p;extern EmLine ****EmisLines;typedef struct{  long n;  long s;  long l;} Elevels;extern struct t_iso{  float ***Pop2Ion;  long int numLevels[2][30L];} iso;extern struct t_LineSave{  long int nsum;  long int ndsum;  long int nComment;  long int npxdd;  long int ipass;  char chHoldComments[10][200];} LineSave;extern struct t_hydro{  int lgHydEmiss;  float **pestrk ;} hydro;extern struct t_dense{  double DensityLaw[10];  float frad[500];  float fhden[500];  float den0;  double eden;} dense;extern struct t_abund{  float xIonFracs[30L +3][30L +1];} abund;extern struct t_CaseBHS{  long int nDensity[2][8] , ntemp[2][8] , ncut[2][8] ;  int lgHCaseBOK[2][8];} CaseBHS ;extern struct t_smbeta{  float SimHBeta,    cn4861,    cn1216,    sv4861,    sv1216;} smbeta;extern struct t_phycon{  float te;} phycon;extern struct t_sphere{  int lgSphere;  float covgeo;} sphere;void linadd(double xInten, float wavelength, char *chLab, char chInfo);extern struct t_radiusVar{  int lgDrNeg;  double dVeff;} radius;void lines_hydro(void){  long int i, nelem, ipHi, ipLo;  double hbetab, em , EmisFac, pump;  char chLabel[5];  linadd(abund.xIonFracs[ipHYDROGEN][1]*iso.Pop2Ion[ipH_LIKE][ipHYDROGEN][3]*hydro.pestrk[3][2]*3.025e-12, 6563,"Strk",'i');  linadd(abund.xIonFracs[ipHYDROGEN][1]*iso.Pop2Ion[ipH_LIKE][ipHYDROGEN][4]*hydro.pestrk[4][2]*4.084e-12, 4861,"Strk",'i');  linadd(abund.xIonFracs[ipHYDROGEN][1]*iso.Pop2Ion[ipH_LIKE][ipHYDROGEN][4]*hydro.pestrk[4][3]*1.059e-12, 18751,"Strk",'i');  linadd(abund.xIonFracs[ipHYDROGEN][1]*iso.Pop2Ion[ipH_LIKE][ipHYDROGEN][5]*hydro.pestrk[5][4]*4.900e-13, 40512,"Strk",'i');  ((void)((LineSave.ipass <1 || EmisLines[ipH_LIKE][ipHYDROGEN][ipH2p][ipH1s].ots>= 0.) || (__assert("LineSave.ipass <1 || EmisLines[ipH_LIKE][ipHYDROGEN][ipH2p][ipH1s].ots>= 0.", "lines_hydro.c", 118), 0)));  linadd(EmisLines[ipH_LIKE][ipHYDROGEN][3][ipH2s].ots*EmisLines[ipH_LIKE][ipHYDROGEN][3][ipH2s].EnergyErg, 6563,"Dest",'i');  linadd(EmisLines[ipH_LIKE][ipHYDROGEN][5][4].ots*EmisLines[ipH_LIKE][ipHYDROGEN][5][4].EnergyErg,40516, "Dest",'i');  smbeta.SimHBeta = smbeta.SimHBeta/(float)radius.dVeff*sphere.covgeo;  linadd(smbeta.SimHBeta,4861,"Q(H)",'i');  smbeta.SimHBeta = smbeta.SimHBeta*(float)radius.dVeff/sphere.covgeo;  for( nelem=0; nelem < 30L; nelem++ )  {    int iCase;    for( iCase=0; iCase<2; ++iCase )    {      char chAB[2]={'A','B'};      char chLab[5]="Ca  ";      for( ipLo=1+iCase; ipLo<(((6)<(iso.numLevels[ipH_LIKE][nelem])) ? (6) : (5)); ++ipLo )      {        for( ipHi=ipLo+1; ipHi< (((ipLo+5)<(iso.numLevels[ipH_LIKE][nelem])) ? (ipLo+5) : (iso.numLevels[ipH_LIKE][nelem])); ++ipHi )        {          float wl;          hbetab = HSRate( ipHi,ipLo , nelem+1, phycon.te , dense.eden, chAB[iCase] );          if( hbetab<=0. )            CaseBHS.lgHCaseBOK[iCase][nelem] = 0;          if( !hydro.lgHydEmiss )            hbetab *= abund.xIonFracs[nelem][nelem+1]*dense.eden;         linadd(hbetab,wl,chLab,'i' );        }      }    }  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -