亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? convo.c

?? 卷積程序
?? C
?? 第 1 頁 / 共 3 頁
字號(hào):
A2F(InputStruct * In_Ptr, double **A_rz)
{
  short       nz = In_Ptr->nz, nr = In_Ptr->nr;
  double      dr = In_Ptr->dr, dz = In_Ptr->dz;
  short       ir, iz;
  double      mua;

  for (ir = 0; ir < nr; ir++)
    for (iz = 0; iz < nz; iz++) {
      mua = In_Ptr->layerspecs[IzToLayer(iz, In_Ptr)].mua;
      if (mua > 0.0)
	A_rz[ir][iz] /= mua;
    }
}

/****************************************************************
 *	Fluence to absorption density. F = A*mua;
 ****/
void 
F2A(InputStruct * In_Ptr, double **A_rz)
{
  short       nz = In_Ptr->nz, nr = In_Ptr->nr;
  double      dr = In_Ptr->dr, dz = In_Ptr->dz;
  short       ir, iz;
  double      mua;

  for (ir = 0; ir < nr; ir++)
    for (iz = 0; iz < nz; iz++) {
      mua = In_Ptr->layerspecs[IzToLayer(iz, In_Ptr)].mua;
      if (mua > 0.0)
	A_rz[ir][iz] *= mua;
    }
}

/****************************************************************
 ****/
void 
BranchContOrigCmd(char *Cmd_Str,
		  InputStruct * In_Ptr,
		  OutStruct * Out_Ptr)
{
  char        ch;

  switch (toupper(Cmd_Str[0])) {
  case 'A':
    IsoPlot(Out_Ptr->A_rz, In_Ptr->nr - 1, In_Ptr->nz - 1,
	    In_Ptr->dr, In_Ptr->dz);
    break;
  case 'F':
    A2F(In_Ptr, Out_Ptr->A_rz);
    IsoPlot(Out_Ptr->A_rz, In_Ptr->nr - 1, In_Ptr->nz - 1,
	    In_Ptr->dr, In_Ptr->dz);
    F2A(In_Ptr, Out_Ptr->A_rz);
    break;
  case 'R':
    IsoPlot(Out_Ptr->Rd_ra, In_Ptr->nr - 1, In_Ptr->na - 1,
	    In_Ptr->dr, In_Ptr->da);
    break;
  case 'T':
    IsoPlot(Out_Ptr->Tt_ra, In_Ptr->nr - 1, In_Ptr->na - 1,
	    In_Ptr->dr, In_Ptr->da);
    break;
  case 'H':
    ShowContOrigMenu(In_Ptr->in_fname);
    break;
  case 'Q':
    break;
  default:
    puts("...Wrong command");
  }
}
/****************************************************************
 ****/
void 
ContourOrigData(InputStruct * In_Ptr,
		OutStruct * Out_Ptr)
{
  char        cmd_str[STRLEN];

  if (!Out_Ptr->allocated)
    puts("...No data to output");
  else
    do {
      printf("\n> Contour output of mcml data (h for help) => ");
      do
	gets(cmd_str);
      while (!strlen(cmd_str));	/* avoid null string. */
      BranchContOrigCmd(cmd_str, In_Ptr, Out_Ptr);
    } while (toupper(cmd_str[0]) != 'Q');
}

/****************************Scanning***************************/
/****************************************************************
 ****/
void 
ShowScanOrigMenu(char *in_fname)
{
  printf("Ar = absorption vs r @ fixed z [1/cm3]\n");
  printf("Az = absorption vs z @ fixed r [1/cm3]\n");
  printf("Fr = fluence vs r @ fixed z [1/cm2]\n");
  printf("Fz = fluence vs z @ fixed r [1/cm2]\n");
  printf("Rr = diffuse reflectance vs r @ fixed angle [1/(cm2 sr)]\n");
  printf("Ra = diffuse reflectance vs angle @ fixed r [1/(cm2 sr)]\n");
  printf("Tr = transmittance vs r @ fixed angle [1/(cm2 sr)]\n");
  printf("Ta = transmittance vs angle @ fixed r [1/(cm2 sr)]\n");
  printf("Q  = quit\n");
  printf("* input filename: %s \n", in_fname);
}

/****************************************************************
 *	Ext is either "Ars" or "Frs".
 ****/
void 
ScanOrigA_r(char *Ext, InputStruct * In_Ptr, double **A_rz)
{
  short       ir, iz, nr = In_Ptr->nr, nz = In_Ptr->nz;
  double      r, z, dr = In_Ptr->dr, dz = In_Ptr->dz;
  FILE       *file;

  file = GetWriteFile(Ext);
  if (file == NULL)
    return;

  printf("z grid separation is %-10.4lg cm.\n", dz);
  printf("Input fixed z index (0 - %2hd): ", nz - 1);
  iz = GetShort(0, nz - 1);
  fprintf(file, "%-12s\t%-s@z=%-9.3lg\n", "r[cm]", Ext, dz * (iz + 0.5));
  for (ir = 0; ir < nr; ir++) {
    r = (ir + 0.5) * dr;
    fprintf(file, "%-12.4E\t%-12.4E\n", r, A_rz[ir][iz]);
  }

  fclose(file);
}

/****************************************************************
 *	Ext is either "Azs" or "Fzs".
 ****/
void 
ScanOrigA_z(char *Ext, InputStruct * In_Ptr, double **A_rz)
{
  short       ir, iz, nr = In_Ptr->nr, nz = In_Ptr->nz;
  double      r, z, dr = In_Ptr->dr, dz = In_Ptr->dz;
  FILE       *file;

  file = GetWriteFile(Ext);
  if (file == NULL)
    return;

  printf("r grid separation is %-10.4lg cm.\n", dr);
  printf("Input fixed r index (0 - %2hd): ", nr - 1);
  ir = GetShort(0, nr - 1);
  fprintf(file, "%-12s\t%-s@r=%-9.3lg\n", "z[cm]", Ext, dr * (ir + 0.5));
  for (iz = 0; iz < nz; iz++) {
    z = (iz + 0.5) * dz;
    fprintf(file, "%-12.4E\t%-12.4E\n", z, A_rz[ir][iz]);
  }

  fclose(file);
}

/****************************************************************
 ****/
void 
ScanOrigRd_r(InputStruct * In_Ptr, double **Rd_ra)
{
  short       ir, ia, nr = In_Ptr->nr, na = In_Ptr->na;
  double      r, a, dr = In_Ptr->dr, da = In_Ptr->da;
  FILE       *file;
  char        fname[STRLEN];

  strcpy(fname, "Rrs");
  file = GetWriteFile(fname);
  if (file == NULL)
    return;

  printf("Angle grid separation is %-10.4lg rad.\n", da);
  printf("Input fixed angle index (0 - %2hd): ", na - 1);
  ia = GetShort(0, na - 1);
  fprintf(file, "%-12s\t%-s@a=%-9.3lg\n", "r[cm]", fname, da * (ia + 0.5));
  for (ir = 0; ir < nr; ir++) {
    r = (ir + 0.5) * dr;
    fprintf(file, "%-12.4E\t%-12.4E\n", r, Rd_ra[ir][ia]);
  }

  fclose(file);
}

/****************************************************************
 ****/
void 
ScanOrigRd_a(InputStruct * In_Ptr, double **Rd_ra)
{
  short       ir, ia, nr = In_Ptr->nr, na = In_Ptr->na;
  double      r, a, dr = In_Ptr->dr, da = In_Ptr->da;
  FILE       *file;
  char        fname[STRLEN];

  strcpy(fname, "Ras");
  file = GetWriteFile(fname);
  if (file == NULL)
    return;

  printf("r grid separation is %-10.4lg cm.\n", dr);
  printf("Input fixed r index (0 - %2hd): ", nr - 1);
  ir = GetShort(0, nr - 1);
  fprintf(file, "%-12s\t%-s@r=%-9.3lg\n", "a[rad]", fname, dr * (ir + 0.5));
  for (ia = 0; ia < na; ia++) {
    a = (ia + 0.5) * da;
    fprintf(file, "%-12.4E\t%-12.4E\n", a, Rd_ra[ir][ia]);
  }

  fclose(file);
}

/****************************************************************
 ****/
void 
ScanOrigTt_r(InputStruct * In_Ptr, double **Tt_ra)
{
  short       ir, ia, nr = In_Ptr->nr, na = In_Ptr->na;
  double      r, a, dr = In_Ptr->dr, da = In_Ptr->da;
  FILE       *file;
  char        fname[STRLEN];

  strcpy(fname, "Trs");
  file = GetWriteFile(fname);
  if (file == NULL)
    return;

  printf("Angle grid separation is %-10.4lg rad.\n", da);
  printf("Input fixed angle index (0 - %2hd): ", na - 1);
  ia = GetShort(0, na - 1);
  fprintf(file, "%-12s\t%-s@a=%-9.3lg\n", "r[cm]", fname, da * (ia + 0.5));
  for (ir = 0; ir < nr; ir++) {
    r = (ir + 0.5) * dr;
    fprintf(file, "%-12.4E\t%-12.4E\n", r, Tt_ra[ir][ia]);
  }

  fclose(file);
}

/****************************************************************
 ****/
void 
ScanOrigTt_a(InputStruct * In_Ptr, double **Tt_ra)
{
  short       ir, ia, nr = In_Ptr->nr, na = In_Ptr->na;
  double      r, a, dr = In_Ptr->dr, da = In_Ptr->da;
  FILE       *file;
  char        fname[STRLEN];

  strcpy(fname, "Tas");
  file = GetWriteFile(fname);
  if (file == NULL)
    return;

  printf("r grid separation is %-10.4lg cm.\n", dr);
  printf("Input fixed r index (0 - %2hd): ", nr - 1);
  ir = GetShort(0, nr - 1);
  fprintf(file, "%-12s\t%-s@r=%-9.3lg\n", "a[rad]", fname, dr * (ir + 0.5));
  for (ia = 0; ia < na; ia++) {
    a = (ia + 0.5) * da;
    fprintf(file, "%-12.4E\t%-12.4E\n", a, Tt_ra[ir][ia]);
  }

  fclose(file);
}

/****************************************************************
 ****/
void 
BranchScanOrigA(char *Cmd_Str,
		InputStruct * In_Ptr,
		OutStruct * Out_Ptr)
{
  char        fname[STRLEN];

  switch (toupper(Cmd_Str[1])) {
  case 'R':
    strcpy(fname, "Ars");
    ScanOrigA_r(fname, In_Ptr, Out_Ptr->A_rz);
    break;
  case 'Z':
    strcpy(fname, "Azs");
    ScanOrigA_z(fname, In_Ptr, Out_Ptr->A_rz);
    break;
  default:
    puts("...Wrong command");
  }
}

/****************************************************************
 ****/
void 
BranchScanOrigF(char *Cmd_Str,
		InputStruct * In_Ptr,
		OutStruct * Out_Ptr)
{
  char        fname[STRLEN];

  A2F(In_Ptr, Out_Ptr->A_rz);

  switch (toupper(Cmd_Str[1])) {
  case 'R':
    strcpy(fname, "Frs");
    ScanOrigA_r(fname, In_Ptr, Out_Ptr->A_rz);
    break;
  case 'Z':
    strcpy(fname, "Fzs");
    ScanOrigA_z(fname, In_Ptr, Out_Ptr->A_rz);
    break;
  default:
    puts("...Wrong command");
  }

  F2A(In_Ptr, Out_Ptr->A_rz);
}

/****************************************************************
 ****/
void 
BranchScanOrigR(char *Cmd_Str,
		InputStruct * In_Ptr,
		OutStruct * Out_Ptr)
{
  switch (toupper(Cmd_Str[1])) {
    case 'R':
    ScanOrigRd_r(In_Ptr, Out_Ptr->Rd_ra);
    break;
  case 'A':
    ScanOrigRd_a(In_Ptr, Out_Ptr->Rd_ra);
    break;
  default:
    puts("...Wrong command");
  }
}

/****************************************************************
 ****/
void 
BranchScanOrigT(char *Cmd_Str,
		InputStruct * In_Ptr,
		OutStruct * Out_Ptr)
{
  switch (toupper(Cmd_Str[1])) {
    case 'R':
    ScanOrigTt_r(In_Ptr, Out_Ptr->Tt_ra);
    break;
  case 'A':
    ScanOrigTt_a(In_Ptr, Out_Ptr->Tt_ra);
    break;
  default:
    puts("...Wrong command");
  }
}

/****************************************************************
 ****/
void 
BranchScanOrigCmd(char *Cmd_Str,
		  InputStruct * In_Ptr,
		  OutStruct * Out_Ptr)
{
  char        ch;

  switch (toupper(Cmd_Str[0])) {
  case 'A':
    BranchScanOrigA(Cmd_Str, In_Ptr, Out_Ptr);
    break;
  case 'F':
    BranchScanOrigF(Cmd_Str, In_Ptr, Out_Ptr);
    break;
  case 'R':
    BranchScanOrigR(Cmd_Str, In_Ptr, Out_Ptr);
    break;
  case 'T':
    BranchScanOrigT(Cmd_Str, In_Ptr, Out_Ptr);
    break;
  case 'H':
    ShowScanOrigMenu(In_Ptr->in_fname);
    break;
  case 'Q':
    break;
  default:
    puts("...Wrong command");
  }
}

/****************************************************************
 ****/
void 
ScanOrigData(InputStruct * In_Ptr,
	     OutStruct * Out_Ptr)
{
  char        cmd_str[STRLEN];

  if (!Out_Ptr->allocated)
    puts("...No data to output");
  else
    do {
      printf("\n> Scans of mcml data (h for help) => ");
      do
	gets(cmd_str);
      while (!strlen(cmd_str));	/* avoid null string. */
      BranchScanOrigCmd(cmd_str, In_Ptr, Out_Ptr);
    } while (toupper(cmd_str[0]) != 'Q');
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91老师片黄在线观看| 国产乱子轮精品视频| 欧美大度的电影原声| 高清不卡一二三区| 亚洲123区在线观看| 日韩欧美国产综合一区| 在线日韩av片| 成人精品在线视频观看| 老汉av免费一区二区三区| 亚洲激情在线播放| 久久精品日产第一区二区三区高清版 | 欧美色图天堂网| 成人免费视频视频| 国产综合一区二区| 午夜精品福利视频网站| 国产精品久久久久久久久久久免费看| 欧美一区二区三级| 精品1区2区3区| 91在线看国产| 成人天堂资源www在线| 久久国产尿小便嘘嘘尿| 日韩国产欧美在线视频| 樱桃国产成人精品视频| 国产精品每日更新| 国产亚洲一区二区三区在线观看 | 青青草伊人久久| 亚洲一区二区在线免费观看视频| 国产欧美一区二区精品忘忧草| 日韩欧美国产高清| 日韩三级伦理片妻子的秘密按摩| 欧美日韩成人在线一区| 欧美日精品一区视频| 色综合亚洲欧洲| 91视频com| 色婷婷久久久综合中文字幕 | 国产精品一二三四区| 久久精品国产99| 日本中文字幕不卡| 美腿丝袜亚洲色图| 精品在线播放免费| 久久66热偷产精品| 国产一区二区三区免费看| 九九热在线视频观看这里只有精品| 日韩精品91亚洲二区在线观看| 亚欧色一区w666天堂| 中文字幕中文乱码欧美一区二区 | 成人性生交大合| 亚洲欧美另类在线| 精品欧美乱码久久久久久 | 国产精品久久久久久户外露出| 91国产免费观看| 99久久久国产精品免费蜜臀| 亚洲一二三级电影| 7777精品伊人久久久大香线蕉经典版下载 | 国产又黄又大久久| 国产精品影音先锋| 成人一级视频在线观看| 成人h版在线观看| 91丝袜高跟美女视频| 色噜噜狠狠一区二区三区果冻| 久久久久久亚洲综合| 国产偷国产偷亚洲高清人白洁 | 国产欧美日韩综合| 日韩一区中文字幕| 一区二区三区四区不卡视频 | 国产寡妇亲子伦一区二区| 成人精品国产福利| 欧美色倩网站大全免费| 欧美一级在线免费| 国产片一区二区三区| 亚洲男帅同性gay1069| 日韩成人dvd| 国产成人精品免费网站| jiyouzz国产精品久久| 欧美在线观看视频一区二区| 日韩免费一区二区| 国产精品私人自拍| 亚洲.国产.中文慕字在线| 国产乱码精品1区2区3区| 91啪亚洲精品| 精品电影一区二区| 亚洲精品欧美综合四区| 久久精品国产77777蜜臀| 波多野结衣一区二区三区| 欧美日韩高清不卡| 欧美国产1区2区| 日韩精品国产欧美| 99久久亚洲一区二区三区青草| 欧美日韩你懂的| 中文字幕第一区二区| 午夜精品福利在线| 99精品欧美一区二区三区小说| 91麻豆精品国产| 亚洲人精品午夜| 日本大胆欧美人术艺术动态| caoporn国产一区二区| 欧美电视剧免费全集观看| 一区二区三区欧美日| 国产精品1024| 91 com成人网| 亚洲精品高清在线观看| 国产a区久久久| 日韩欧美成人午夜| 亚洲国产欧美一区二区三区丁香婷| 成人午夜激情在线| 日韩一区二区免费在线电影| 一区二区三区精品在线| 国产成a人无v码亚洲福利| 欧美一级二级在线观看| 亚洲国产精品久久一线不卡| av电影一区二区| 国产午夜精品久久久久久免费视| 日韩av二区在线播放| 欧美视频一区二区三区| 亚洲人成电影网站色mp4| 国产成人日日夜夜| 亚洲精品一区二区三区蜜桃下载 | 欧美精品vⅰdeose4hd| 最新成人av在线| 成人免费视频播放| 精品国产sm最大网站| 人人狠狠综合久久亚洲| 欧美日韩免费观看一区三区| 国产不卡高清在线观看视频| 欧美成人aa大片| 男男成人高潮片免费网站| 欧美日韩精品欧美日韩精品一综合| 亚洲六月丁香色婷婷综合久久 | 精品日韩欧美一区二区| 日韩av午夜在线观看| 欧美放荡的少妇| 午夜影视日本亚洲欧洲精品| 在线观看一区不卡| 亚洲最大成人综合| 欧美又粗又大又爽| 亚洲一区二区三区小说| 欧美视频在线一区| 丝袜诱惑制服诱惑色一区在线观看| 欧美午夜一区二区| 视频在线在亚洲| 日韩一区二区三区在线| 免费看日韩精品| 精品国产一区二区三区忘忧草| 久久99精品国产.久久久久| 久久美女艺术照精彩视频福利播放| 国内精品写真在线观看| 久久久久久久电影| 成人精品视频一区二区三区| 日韩一区中文字幕| 精品视频一区二区三区免费| 日韩激情一二三区| 精品欧美乱码久久久久久 | 国产成人在线视频网站| 欧美国产欧美亚州国产日韩mv天天看完整| 国产乱妇无码大片在线观看| 国产精品久久久久aaaa樱花 | 日韩一区二区免费高清| 久久电影网电视剧免费观看| 久久久久国产一区二区三区四区| 成人免费视频视频| 亚洲影院久久精品| 欧美一级一区二区| 国内精品嫩模私拍在线| 亚洲人成在线观看一区二区| 9191久久久久久久久久久| 国产一区二区久久| 亚洲视频香蕉人妖| 欧美一区二区三区免费视频| 韩国成人在线视频| 尤物视频一区二区| 欧美成人一区二区三区片免费| 粉嫩aⅴ一区二区三区四区 | 久久精品国产亚洲aⅴ| 久久久久成人黄色影片| 欧美吻胸吃奶大尺度电影 | 亚洲特级片在线| 在线播放欧美女士性生活| 国产一区二区美女诱惑| 亚洲综合色在线| 久久网站最新地址| 日本道免费精品一区二区三区| 免费看日韩精品| 亚洲精品免费电影| 欧美成人r级一区二区三区| 91丨九色porny丨蝌蚪| 免费日本视频一区| 亚洲精品成a人| 国产亚洲女人久久久久毛片| 91黄色激情网站| 国产麻豆精品一区二区| 亚洲一区二区三区中文字幕| 国产偷国产偷精品高清尤物| 欧美性猛交一区二区三区精品| 国产一区二区三区不卡在线观看| 亚洲一区二区三区四区五区黄 | 一区二区三区在线视频观看| 欧美日韩你懂的| 成人一区在线观看| 男男视频亚洲欧美| 亚洲国产一区二区a毛片|