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

📄 input.c

📁 su 的源代码库
💻 C
字号:
/* Copyright (c) Colorado School of Mines, 2006.*//* All rights reserved.                       */#include "posteriori.h"/*  Function inputCovar()                                       *//*                                                              *//*  Input of data and model covariance matrixes                 *//*                                                              *//*  Input parameters:                                           *//*  corrDataFile...............file name with data covariance   *//*  corrModelFile[0 1 2].......file name with model covariance  *//*                             [0] : (P-wave velocities)        *//*                             [1] : (S-wave velocities)        *//*                             [2] : (Density)                  *//*                             used in case PRIOR = 1           *//*                                                              *//*  Output parameters (GLOBAL)                                  *//*  CD.....................data covariance matrix               *//*  CM.....................model covariance matrix              *//*                         outputted in case PRIOR = 1          */ /*                         (CMP, CMS, CMrho)                    *//*                                                              *//*                                              Wences Gouveia  *//*                                              September 1995  */void inputCovar(char* corrDataFile, char* corrModelFile[3]){   /* declaration of variables */   int iS, iS1, i;              /* generic counters */   float *buffer = NULL;	/* to input covariances */   FILE *fp;			/* input file */   /* inputting data covariances */   fp = fopen(corrDataFile, "r");   if (fp == NULL)      err("Can't read data covariance file %s\n", corrDataFile);      /* allocating memory for auxiliary buffer */   buffer = alloc1float(nDM);      for (i = 0, iS = 0; iS < nDM; iS++)   {      fread(buffer, sizeof(float), nDM, fp);      for (iS1 = iS; iS1 < nDM; iS1++, i++)      {	 CD[i] = buffer[iS1];      }   }      /* freeing memory */   free1float(buffer);   if (PRIOR)   {      /* allocating memory for auxiliary buffer */      buffer = alloc1float(limRange);            if (vpFrechet)      {	 fp = fopen(corrModelFile[0], "r");	 if (fp == NULL)	    err("Can't read model covariance file %s\n", corrModelFile[0]);	 	 for (i = 0, iS = 0; iS < limRange; iS++)	 {	    fread(buffer, sizeof(float), limRange, fp);	    for (iS1 = iS; iS1 < limRange; iS1++, i++)	    {	       CMP[i] = buffer[iS1];	    }	 }	 fclose(fp);      }      if (vsFrechet)      {	 fp = fopen(corrModelFile[1], "r");	 if (fp == NULL)	    err("Can't read model covariance file %s\n", corrModelFile[1]);	 	 for (i = 0, iS = 0; iS < limRange; iS++)	 {	    fread(buffer, sizeof(float), limRange, fp);	    for (iS1 = iS; iS1 < limRange; iS1++, i++)	    {	       CMS[i] = buffer[iS1];	    }	 }	 fclose(fp);      }      if (rhoFrechet)      {	 fp = fopen(corrModelFile[2], "r");	 if (fp == NULL)	    err("Can't read model covariance file %s\n", corrModelFile[2]);	 	 for (i = 0, iS = 0; iS < limRange; iS++)	 {	    fread(buffer, sizeof(float), limRange, fp);	    for (iS1 = iS; iS1 < limRange; iS1++, i++)	    {	       CMrho[i] = buffer[iS1];	    }	 }	 fclose(fp);      }      /* freeing memory */      free1float(buffer);   }}

⌨️ 快捷键说明

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