测井数据批量处理

在Jason处理地震数据时,需要加载井数据,而井数据又分为多种。在加载数据之前可能要对其进行预处理。本文以时深关系曲线为例,对其进行处理使得Jason能够识别。


简单的处理过程如上图,生成新的文本文件,去掉原数据中的字符,同时删去头尾部分数据以节省空间


本方法代码如下:

/
author:Yongxiao Tian,China university of petroleum East
/

#define _CRT_SECURE_NO_WARNINGS
#include "max.h"
#include <stdio.h>
#include <string.h>
#include <stdlib.h>

int main()
{
	char filepath[FILENAME_MAX] = "J:\\TD\\filename.txt";  //保存有所有需要处理的文件名
	char openfile[FILENAME_MAX] = { 0 };
	char savefile[FILENAME_MAX] = { 0 };
	char readfile[FILENAME_MAX] = { 0 };
	char* temp = 0;
	FILE* cf;
	FILE* of;
	FILE* sf;

	int N = 1;
	int i = 0;
	int fa = 0;
	int sa = 0;

	double frow = 0;  //第一列
	double srow = 0;  //第二列

	cf = fopen(filepath, "rt");
	if (!cf){ printf("open file failed\n"); return -9; }

	while (!feof(cf))
	{
		//读取待处理文件名
		fscanf(cf, "%s\n", readfile);

		//设置打开文件路径
		strcat(strcpy(openfile, "J:\\TD\\"), readfile);
		//设置保存文件路径
		temp = strchr(readfile, '_');
		strcpy(savefile, "J:\\TD_nw\\");
		strncat(savefile, readfile, temp - readfile);
		strcat(savefile, "_TD.txt");
		printf("%s    |||||    %s    %d\n", openfile, savefile, N++);

		of = fopen(openfile, "rt");
		sf = fopen(savefile, "wt");
		if (!of || !sf){ printf("open file failed\n"); return -99; }

		for (i = 0; i < 10; i++)fgets(readfile, FILENAME_MAX, of);  //删除开头十行
		fscanf(of, "%lf%lf%*s", &frow, &srow);
		while (!feof(of))
		{
			if (frow < 100.0)fa = 9;
			else if (frow < 1000.0)fa = 8;
			else fa = 7;

			if (srow*2 < 100.0)sa = 9;
			else if (srow*2 < 1000.0)sa = 8;
			else sa = 7;
			if (srow>0.0){
				fprintf(sf, "%-12.*lf  %-12.*lf\n", fa, frow, sa, srow * 2);
			}
			fscanf(of, "%lf%lf%*s", &frow, &srow);
		}
		fclose(of);
		fclose(sf);
	}

	return 0;

}

好啦,希望大家学的开心。最近在做项目,我会把期间的心得体会和技巧慢慢po上来。

大地测量计算工具集 【软件功能】 该软件共包含近20项常用大地测量专业计算功能,部分项目功能含多个功能子项。 1)不同坐标形式转换 大地坐标与空间直角坐标的互换;空间直角坐标与正交椭球面坐标的互换;空间直角坐标与站心切平面坐标系的互换;大地坐标、空间直角坐标与球坐标的互换;高斯投影正反算与邻带换算;通用墨卡托投影正反算等。 2)不同坐标系转换 布尔莎模型七参数的求解(最小二乘法、抗差最小二乘法);不同坐标系转换;仿射变换参数求解;仿射变换计算。 3)参考椭球基本常数计算 由椭球基本几何常数计算其他几何常数,计算第一、第二辅助函数;计算卯酉圈、子午圈曲率半径;计算任意曲率半径和平均曲率半径;由椭球基本定义参数(4个)计算其他所有几何常数和物理常数。 4)参考框架变换 同一框架不同历元之间的变换;转换参数历元处不同框架间站速变换;转换参数历元处不同框架之间的坐标变换;历元速度坐标综合变换等。 5)大地问题解算 大地问题正反算,支持贝塞尔方法、高斯平均引数方法和韦森特方法。 6)距离归算 地面斜距归算至参考椭球面;椭球面边长投影至高斯平面;由两点位置计算各类大地方位角和各类边长。 工程控制网长度变形评估,支持标准3度带、任意投影、抵偿面投影、抵偿面任意投影等变形评估类型;支持测区四至信息加载;可以计算最大变形量,并进行限差审核。 7)控制网平差计算 水准网平差,支持最小二乘、粗差探测、自由网平差和拟稳平差; 三角高程网平差,支持最小二乘、粗差探测; GPS网平差,支持GAMIT和TGO基线解算结果转换;支持最小二乘、粗差探测、自由网平差和拟稳平差。 8)IGS观测数据与精密星历下载 支持精密星历、精密钟差、导航星历和原始观测文件的下载、解压和格式转换;支持多天多站下载模式;支持多线程下载;支持站点列表文件导入; 9)GNSS观测数据质量检查 支持GPS和GLONASS观测文件和星历;支持高度角设定;支持摘要生成;含有HOR图、IOD、ION、MP1、MP2、SN1、SN2图形的生成,支持按卫星编号绘图。 10)RTK定位结果精度分析 可应用于单点多历元各类XYZ坐标类型的点位精度分析,支持外部精度分析和内部精度评估;支持坐标转换;支持三维精度、平面精度的计算;支持数据剔除原则设定。 11)GNSS水准高程拟合 支持移动曲面法(含平面、二次曲面、加权平均法);支持整体拟合法(平面、二次曲面、三次曲面);支持EGM96和EGM2008;支持按不同地区不同点位分布情况进行算法优选与评估;支持似大地水准面模型文件的转换与生成;支持离散点批量水准拟合插值计算。 12)时间标示法变换 历书时、儒略日、GPS时、年积日等之间的转换;GNSS观测文件与星历文件名称计算。 13)图幅编号计算 由点位计算所在图幅号;由图幅号计算图幅范围;支持传统图幅编号和标准图幅编号;地形图图幅编码计算,由点位获得国标图幅编号和地形图幅编号,由图幅范围计算地形图幅集合。 14)…… 拟加入的功能: (1)水平网概算与平差。 (2)精密单点定位计算。 (3)GPS网型测前精度评估。 (4)GNSS星历预报。 (5)…… 【使用方法】 软件无广告、无注册码、无病毒、无任何功能限制,所有用户手中的软件和作者自己使用的软件是一样的。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值