zoukankan      html  css  js  c++  java
  • Matlab插值计算各时刻磁法勘探日变观测值

    Matlab插值计算各时刻磁法勘探日变观测值

    在磁法勘探中,消日变影响的改正称为日变改正。进行日变改正时必须设立日变站,观测日变情况。根据日变数据和测点观测时间,对观测数据进行改正。

    在本次磁法实习中,日变观测间隔为300s,观测的时间段早于最早的磁力测量,晚于最晚的磁力测量。在整理测量数据进行日变改正时就可以根据进行磁力测量的时刻的日变观测值作日变改正。

    假设日变观测数据的记录时刻分别为1000、1300、1600……3700、4000,而进行磁测时的时刻可能为1000-3000之间的任意整数,因此就可以根据日变观测数据进行插值,进而找到任意时刻对应的日变观测场值。Matlab可以很方便地进行这样的计算:

    function mT=getAllRibian(ribianTime,ribianT,mTime)
    %根据日变站数据和磁测时间数据,计算磁测各时刻对应的日变观测值。
    %ribianTime:日变观测的各个时间向量
    %ribianT:日变观测的T值
    %mTime:磁测各个的时间向量
    %mT:磁测各时刻对应的日变观测值
    
    %日变数据时间的个数
    timeNum=length(ribianTime);
    %日变观测的起止时间
    startTime=ribianTime(1);
    endTime=ribianTime(timeNum);
    %插值后的时间轴,间隔为1(最小为1)
    newX=[startTime:endTime];
    %线性插值
    newT=interp1(ribianTime,ribianT,newX);
    %需要计算的时间个数
    num=length(mTime);
    mT=zeros(num,1);
    for i=1:num
        m_time=mTime(i);
        %m_time对应newT中的m_time-startTime+1
        mT(i,1)=newT(m_time-startTime+1); 
    end
    

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    声音走样
    Terrain
    输出循环小数
    解决代码中多余的空行
    与二进制有关的几道面试题
    反转一个整数
    DirectX常见编译错误及解决办法
    STLset
    Visual Studio Autoexpand Information for DirectX 9
    素数环谈代码优化
  • 原文地址:https://www.cnblogs.com/xiaff/p/4856498.html
Copyright © 2011-2022 走看看