//---------------------------------------------------------------------------

#ifndef Unit2H
#define Unit2H
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <ExtCtrls.hpp>
#include <Menus.hpp>
#include <Dialogs.hpp>
#include <DB.hpp>
#include <DBGrids.hpp>
#include <DBTables.hpp>
#include <Grids.hpp>
#include <ADODB.hpp>
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published:	// IDE-managed Components
        TScrollBox *ScrollBox1;
        TScrollBox *ScrollBox3;
                    TScrollBox *ScrollBox4;
        TPaintBox *PaintBox1;
        TPaintBox *PaintBox2;
        TPaintBox *PaintBox3;
        TPaintBox *PaintBox4;
        TMainMenu *MainMenu1;
        TMenuItem *N1;
        TMenuItem *LA1;
        TMenuItem *LA2;
        TMenuItem *N2;
        TOpenDialog *OpenDialog1;
        TSaveDialog *SaveDialog1;
        TMenuItem *N3;
        TMenuItem *N4;
        TMenuItem *N5;
        TMenuItem *N6;
        TMenuItem *N7;
        TMenuItem *N8;
        TMenuItem *N9;
        TMenuItem *N10;
        TMenuItem *N11;
        TMenuItem *N12;
        TMenuItem *N13;
        TMenuItem *N14;
        TTable *Table1;
        TDataSource *DataSource1;
        TDBGrid *DBGrid1;
                    TMenuItem *N15;
        TMenuItem *N16;
                    TMainMenu *MainMenu2;
                    TImage *Image1;
        TMenuItem *N21;
        TMenuItem *N22;
        TScrollBox *ScrollBox2;
                    TMenuItem *N24;
                    TMenuItem *LA3;
                    TMenuItem *LA4;
                    TBatchMove *BatchMove1;
                    TMenuItem *N25;
        TDatabase *Database1;
        TMenuItem *N26;
        TPaintBox *PaintBox5;
        void __fastcall LA1Click(TObject *Sender);
        void __fastcall FormCreate(TObject *Sender);
        void __fastcall ScrollBox3CanResize(TObject *Sender, int &NewWidth,
          int &NewHeight, bool &Resize);
        void __fastcall ScrollBox4CanResize(TObject *Sender, int &NewWidth,
          int &NewHeight, bool &Resize);
        void __fastcall ScrollBox1CanResize(TObject *Sender, int &NewWidth,
          int &NewHeight, bool &Resize);
        void __fastcall js(TObject *Sender, int &NewWidth,
          int &NewHeight, bool &Resize);
        void __fastcall LA2Click(TObject *Sender);
        void __fastcall N4Click(TObject *Sender);
        void __fastcall N5Click(TObject *Sender);
        void __fastcall PaintBox2Paint(TObject *Sender);
        void __fastcall PaintBox1Paint(TObject *Sender);
        void __fastcall FormCanResize(TObject *Sender, int &NewWidth,
          int &NewHeight, bool &Resize);
        void __fastcall PaintBox3Paint(TObject *Sender);
        void __fastcall PaintBox4Paint(TObject *Sender);
        void __fastcall N7Click(TObject *Sender);
        void __fastcall N8Click(TObject *Sender);
        void __fastcall PaintBox2MouseMove(TObject *Sender,
          TShiftState Shift, int X, int Y);
        void __fastcall PaintBox2MouseDown(TObject *Sender,
          TMouseButton Button, TShiftState Shift, int X, int Y);
        void __fastcall PaintBox2MouseUp(TObject *Sender,
          TMouseButton Button, TShiftState Shift, int X, int Y);
        void __fastcall PaintBox4MouseDown(TObject *Sender,
          TMouseButton Button, TShiftState Shift, int X, int Y);
        void __fastcall PaintBox4MouseUp(TObject *Sender,
          TMouseButton Button, TShiftState Shift, int X, int Y);
        void __fastcall N9Click(TObject *Sender);
        void __fastcall N3Click(TObject *Sender);
        void __fastcall N10Click(TObject *Sender);
        void __fastcall N11Click(TObject *Sender);
        void __fastcall N12Click(TObject *Sender);
        void __fastcall N13Click(TObject *Sender);
        void __fastcall N14Click(TObject *Sender);
        void __fastcall dtsjglmdwqd(TObject *Sender);
        void __fastcall syjsytd(TObject *Sender);
        void __fastcall PaintBox4MouseMove(TObject *Sender,
          TShiftState Shift, int X, int Y);
        void __fastcall N16Click(TObject *Sender);
        void __fastcall N18Click(TObject *Sender);

                    void __fastcall N20Click(TObject *Sender);
        void __fastcall N15Click(TObject *Sender);
        void __fastcall N21Click(TObject *Sender);
                    void __fastcall N22Click(TObject *Sender);
                    void __fastcall N24Click(TObject *Sender);
                    void __fastcall LA3Click(TObject *Sender);
                    void __fastcall LA4Click(TObject *Sender);
                    void __fastcall N25Click(TObject *Sender);
                         //时域及时域梯度
        //
        void __fastcall BitBtn1Click(TObject *Sender);
        void __fastcall BitBtn2Click(TObject *Sender);
        void __fastcall BitBtn6Click(TObject *Sender);
        void __fastcall BitBtn8Click(TObject *Sender);
        void __fastcall BitBtn9Click(TObject *Sender);
        void __fastcall N111Click(TObject *Sender);
        void __fastcall N26Click(TObject *Sender);
        void __fastcall PaintBox5Click(TObject *Sender);
        void __fastcall PaintBox5Paint(TObject *Sender);

private: int Name_Height,tracknum,starti1,starti2,lj,ljcs,isb;
        float S11[2000][20],szff[50],cjmk[500],cjmk0[500],fendp,fdp0,fdp01;//层号概率密度  四种方法  层间门槛
        float data[50000][50],data1[50000][50],Top_deep1,Top_deep,sigma[20][2000],a2lj[500],xldeep[300];
        String cname1[100][10],cname2[100][10],cname3[100][10],cname30[100][10],sname,str6[1000],str7[1000],str8[1000],str16[500];
        char str[500],str1[500],str2[500],str3[500],str0[500],str11[500],str4[500],str5[500];
        char str01[500],str02[500],str04[500],str03[500],str05[500],Lname[500][10];
        float a[30000][50],a1[15000][50],e[15000][50],a2[1500][50],a3[5000][50],ae[500][4],aer[500][4],deep11[1000],deep21[500],stdp,endp,relv;//a2[][] biaowai  ae[][] youxiao
        int Spos,btn,cnum,ite,DEEP,umin1,umin2,open_switch,open_correct,open_correct2;
        int temp_index[3][4],temp_index1[3][4];         float po2[30],xjcw9[500],poGM[300],pdtsj1[300],menkan3[300];
        TPaintBox *Px[100];  float value,zxcjj;  //最小层间距
        String ss1,ss2,ss3,ccpdy,ccpdy2,jjhh, p1yczmc,p2dymc;  // float sdeep;  //斜率匹配深度   ,sdeep1,sdeep2,sdeep3,sdeep4,s2[20],sdp1[20]
        String cc1,cc2,ccold,ccp0,ccp,ccp2,newname,S11name,newname1;
         int index,index1,onpaint_switch,onpaint_switch1,xc_switch;
         int trackwidth,ie,ie1,ie2,i01,xzkg;  //选择开关
         float m1,A1[50][50],z1[500],y1[500],next_z1[500],sun1[500],bestdp[5000][15],xfcdp[5000][50],RXOmax,RXOmin,GRmax,GRmin;
         float m,next_m,eclipse,sum,S11d,A[50][50],z[500],y[500],next_z[500],xcsj[1500][15],sun[500],tzzbz[500],xfcbz[500];
         int n,flag,is,io,open,open1,pos2_4;
    //    float data[50000][50],data1[50000][50];
         TPoint pos_s,pos_e,org;
        float va[2000][18],Rij[5500][3],StRd,StRs,StMK,StMN,vl,Ed,Kro,Krw,Fwp,zzbdp;
        float f1[500][14],f2[500][8],Fe[500],Swi[500],K[500],Sw[500],Fi[1000],fe1,fe2,jiaGR,jiaMN,stdp1,endp1,relv1;
        int k1[5000],topd,endpp,name,sumlayer;float remax;
        float I[1000][20],I1[1000][20],fi[1000][20],fi1[1000][20],Cmax,Cmin,RMNmin,RMNmin1,RDmax,RDmin,DENmax,DENmin,HACmax,HACmin,bestdp0,bestdp1[30];     //自动对比FLOAT
        float bestdeep,dst[500][50],inputTrain[500][50],Input_Meam[500],SMN,SRD,SDEN,SHAC,SRXO,SGR;                   //自动对比FLOAT
        int stedp,min,max,min1,max1,flag1,HAC_pos,MN_pos,MK_pos,Rd_pos,Rs_pos,Ac_pos,GR_pos,Rxo_pos,R25_pos,SP_pos,nx,DEN_pos,ma[500],mi[500];
        int stedp1,HAC1_pos,MN1_pos,MK1_pos,Rd1_pos,Rs1_pos,Ac1_pos,GR1_pos,Rxo1_pos,R251_pos,SP1_pos,DEN1_pos;
        int imn,ird,iden,ihac,ipj,ixo,igr,imx,imxd;//概率密度
        float xsj[5000][15],Cmax1[10],Cmin1[10],p1,S11T[2000][10],SMNT,SRDT,SDENT,SHACT,SRXOT,SGRT,sig[10];float Sdeep[5000][20];//概率密度
         float GYHC[500][50],GYHmax[50],GYHmin[50],WeiShu[20],WeiShu0[20],xssj[500][50],WSDeep[35000][25];     //测井曲线像素特征向量分解法变量
         int ic1,ic2,ic3,ic4,ic5,ic6;  //测井曲线像素特征向量分解法变量
         int inu1,inu2,inu3,inu4,inu5,inu6,inu7,inu8,inu9,inu10,nn;//测井曲线像素特征向量分解法变量
         float XCmax[50],XCmin[50],RWS[500],RWS0[500],BD[2000][20];          //曲线像素任意步长特征向量分解法变量
         float bzcsj[1500][20],GMdeep2[300],bedeep[500][5];       //动态概率密度弯曲度
         int ljcgs,ljcw,cwjd; int icount,moveopen;                     //老井层个数、老井层位、曾为节点
         float sytdu[300],xlzjdeep[300],hfsd,p3dysd;                      //时域梯度 、新老最佳深度
         float deep1[1000],deep2[1000],deep3[300]; //,fdeep[300]
         float ljsdc,zzppsd[500],fdp[300],sdp[300];        //邻井深度差、最终匹配深度 ,第一层深度、第二层深度
        // int izz;//closefs[300];//最终层个数 、首层开关、第二层开关
         float xcw[500], dsw[500],hdw[500],dbsd[500],syhd[500],yxhdd[500],yx[500],       //打开数据库操作
         kxd[500],zstl[500],s,zdcxs[500],hsbhd[500],sfsbh[500];
         AnsiString jhw[500],lb[500],stltz[500],syjs[500],dcjs[500],sk[500],bk[500];
         int jcs[500],jsxh[500],totalnum,pd1,Y1,icolor,moveopen2;int isname;                                                //打开数据库操作
         float xcw1[500],dsw1[500],hdw1[500],dbsd1[500],syhd1[500],yxhdd1[500],yx1[500],       //保存数据库操作
         kxd1[500],zstl1[500],s1,zdcxs1[500],hsbhd1[500],sfsbh1[500];
         AnsiString jhw1[500],lb1[500],stltz1[500],syjs1[500],dcjs1[500],sk1[500],bk1[500];
         int jcs1[500],jsxh1[500];
         float a21lj[500],xjbwhd0[500][4],ljbwhd0[500][4],xjbwhd[500][4],ljbwhd[500][4]; //新井表外厚度、老井表外厚度
         float xljtz[500][15],xxjtz[500][15],Frechetmenkan,Frechdeep[500];                //断层识别
         int iljtzz,ixjtzz,itz,pos,totalnum1;
         float sos,Sl,SSdeep[500];float Kljmd,dp1MN[10],dp2MN[10],sytdMN[10],GMMN[10];                                 //断层识别
         int Xh[300],Xh1[300],Xhc[300];  //序号
         AnsiString Jh[300],Yczmc[300],Dymc[300],Jhc[300],Yczmcc[300],Dymcc[300],Bz[300],Bzc[300],Jh1[300],Yczmc1[300],Dymc1[300],Bz1[300];  //井号 ‘油层组名称、单元名称、标注
         float Dyds[300],Dyds1[300];   //单元顶深
       //  TTable*Table1;
       //  Table1=new TTable(this);
         TTable*newTable;
         String fn1;  int bzckdjs[300];//标准层卡点计数
        // newTable=new TTable(this);
      //  String ccpdy,ccpdy2,jjhh;
        AnsiString jh1[500000],jh2[500000],yczmc1[500000],yczmc2[500000],yczmcc[500000],
                bz1[500000], bz2[500000],bzc[500000],dymc1[500000],dymc2[500000],dymcc[500000],dyds1[500000],dydspb1[500000],dydspb2[500000],dyds2[500000];
        int xh1[500000],xh2[500000],totalnum11,totalnum2,xhc[500000],JCnum,JCljd,JCxjd;
        //  标准层
        float JCdata[200][10],SIII7data[200][10],pI561data[200][10],pII10GI1data[200][10],GI10data[200][10],GI20data[200][10],GII3Y4data[200][10],GII34YIII1data[200][10];
        float deepJC,deepSIII7,deeppI561,deeppII10,deepGI1,deepGI10,deepGI20,deepGII3,deepGII4,deepGII34,deepGIII1;
	// User declarations
        String CCP1,CCP2;

        AnsiString DBF073_path;
        //  Dice 函数
        float Rmn[1500],mbjsj[1500][15],jdmk,osm1,jdsm2,fdmk;//角度  ,S角度归一化 、角度门槛
        int prc,jds,jds1,jdsxj[1500],jdslj[1500],JDSmax,JDSmin,JDSmax1,JDSmin1,stp,stp1,ljcw0,jdz,jdz1,fds,fds1,fdz,fdz1;   //角度数，角度数累计  停止点stop point 角度值  幅度值
        float deep,RMNmax1,RMNmax,jd[1500],jd1[1500],Rmn1[1500],JDmax,JDmin,JDmax1,JDmin1,Sjdgyh[1500],Tjdgyh[1500],v[10],zdz,wincu1,wincd1,wincu[500],wincd[500],suu1,suu2,suu3,su1,su2,su3;//角度  ,S角度归一化 最大值 窗长上、窗长下
        float jdsz[1500],jdsz1[1500],Sjdszgyh[1500],Tjdszgyh[1500],fdsz[1500],fdsz1[1500],ojd,ofd,ljpj,xjpj; //角度欧氏距离  幅度欧氏距离  老井平均   新井平均
        float Tmbjsj[1500][15],Tmbjsj2[1500][15],CDeep[500],start2[500],end2[500];
        float mbS37deep,ckS37deep,mbP27adeep,ckP27adeep,mbG110bdeep,ckG110bdeep,mbG120deep,ckG120deep;
        int S11lj,JClj,S37lj,P11blj,G11lj, P27alj,G110blj,G120lj,zxjcgs; //标准层位置  总新井层个数
        float startt[500],endt[500],mbS11deep,ckS11deep,mbJCdeep,ckJCdeep,ckja2[500],ckjcjlc[500],ckjcjlcxz[500],mbjdcjx[500],cjjmkz[20],cjjmkz2[20],cjjxfmkz[20],mbdeep[500],ckdeep[500]; //层间距门槛值
        int chcsh[500],chcsh2[500],Tmbj,totalnumb[500],stpin,stpinsjk[500],xzc,jdcw[500],st[500],en[500],ckjjd[500],stmb[500],enmb[500],stmb2[500],enmb2[500];            //节点
        float ckjcjlcxfc[500],mbjckcw[500],mbjdjx[500],ckjdjx[500],mbjdjxlc[500],ckjdjxlc[500];//参考井层间落差、目标井参考层位 、目标井底界限 、参考井底界限落差
       // int upstlj, upenlj;       //向上处理    upstlj：向上起始层位； upenlj：向上终止层位
        float I4[500],I5[500],mbdeepc[500],mbjcjjzxz[10],mbjdjxzc[500],mbjbzcmkz,cjjxfDJXmkz[20],mbjxfcmkz;  //  目标井校正深度、目标井层间距最小值 、目标井标志层门槛值 目标井细分层门槛值
        String StdCw,pbcw[500];//标准层位  判别错误
         float deepp[10],deeppzxz[10],deeplast,Rm1,Rm2,Rmnselect,selectbzcdeep,selectbzcdp,selectxfcdeep,selectxfcdp,Rse1[10],se1[500],se2[500],mbjxfcxzmkz;  //目标井细分层选择门槛值
        int ip[10],i09,pdjd,dc;  float RSE,Rlast;  int op,tnum;
        float zdz1, zdz2, zdz3, zdz4, zdz5,dz1,dz2,dz3,dz4,dz5,JCdz1,JCdz2,JCdz3,JCdz4,JCdz5,zxz1,zxz2,zxz3,zxz4,zxz5,sd2;
        float xfcmkz,mbdeep2,mdeep[10],selectxfcdp2,selectxfcdeep2,Rmnselect1[50][10][10],BZCcks[200],BZCcke[200],Rmnsz[10],zdzS37,dpmax;
        float Rmnselect2[50][10][10],psmbdp[500],xuanze[10][10][10],xzJC[10][10],Rmnselect20[20][20],CDJC1[50][10],CDJC[50],Rmnck[500],Rmnmb[500],Ps[5000],bzcpb[800];
        int ljsjks,ljsjke,xfcpss,xfcpse,stmbzxz[500],enmbzxz[500],op1,i08,i07,ib1,ib2,fnum;//邻井数据库始、邻井数据库止 细分层皮时始  细分层皮时止
        int so1; float so[800];
public: __fastcall getint(FILE *fp);
        __fastcall getint7(FILE *fp);
        float __fastcall getfloat(FILE *fp);
        float __fastcall getfloat7(FILE *fp);
        __fastcall putint(short ii,FILE *fp);
        __fastcall putfloat(float ff,FILE *fp);
        __fastcall putint7(short ii,FILE *fp);
        __fastcall putfloat7(float ff,FILE *fp);
        void __fastcall painthead(TObject *Sender);
        void __fastcall painthead1(TObject *Sender);
        void __fastcall paintfenceng(TObject *Sender);
        void __fastcall paintfenceng1(TObject *Sender);
        void __fastcall TForm1::paintfencengnew(TObject *Sender);
        void __fastcall smaxmin(int i0);
        void __fastcall smaxmin1(int i0);
        void __fastcall paintdepth(float stdp0,int stedp1,float relv0);
        void __fastcall paintdepth1(float stdp1,int stedp1,float relv1);
        void __fastcall draw(int temp[3][4],int tracknum,float data[50000][50],int index,float stdp0,float relv0);
        void __fastcall draw1(int temp1[3][4],int tracknum,float data1[50000][50],int index,float stdp1,float relv1);
        void __fastcall Guiyihua(int i,int ie);
        void __fastcall Guiyihua1(int i,int ie);
        void __fastcall Gausshanshutezhengzhi(int ie1);
        void __fastcall Gausstezhengzhipanduan(int ie);
        void __fastcall paixu(int nn,float mn[500][15]);
        void __fastcall readData(TObject *Sender);
        void __fastcall power(TObject *Sender);
        void __fastcall matrixFact(TObject *Sender);
        void __fastcall Findmax(TObject *Sender);
        void __fastcall newZ(TObject *Sender);
        void __fastcall printResult(TObject *Sender);
        void __fastcall GetFileName(String str);
        void __fastcall GetFileName1(String str,int im);
        void __fastcall pingjunzhi(TObject *Sender);
        void __fastcall dtgmwqd(TObject *Sender);  //动态概率密度弯曲度
        // __fastcall getint(FILE *fp);
        //float __fastcall getfloat(FILE *fp);
       // float __fastcall abs(float);
        void __fastcall reckonResidue(TObject *Sender);
         void __fastcall power1(TObject *Sender);
        void __fastcall matrixFact1(TObject *Sender);
        void __fastcall Findmax1(TObject *Sender);
        void __fastcall newZ1(TObject *Sender);
        void __fastcall printResult1(TObject *Sender);
        void __fastcall reckonResidue1(TObject *Sender);
        void __fastcall Cacu(TObject *Sender);
        float __fastcall calCovariation(float aa[500][50]);
        void __fastcall laojinggailvmidu(TObject *Sender);
        void __fastcall paidui(int j1,int nc,float dp[5000][20]);
        void __fastcall GuiYiHua(int totali,int columi,float GYmax[50],float GYmin[50],float GYH[500][50]); //曲线像素特征向量分解法函数
        void __fastcall quxianxiangsutezhengfenjie(int totali,int columi,int BuChang,float XSTZ[500][50]);
         void __fastcall Smaxmin(int n1,int j,float y,int totali,float XCmax[50],float XCmin[50],float XSTZ[500][50]);  //任意步长维数求取方法
        void __fastcall xiangsuweishu(int totali,int columi,float detL,float relv,float XS[500][50]);                   //任意步长维数求取方法
        void __fastcall ljxjdb(TObject *Sender);
        void __fastcall yxz(TObject *Sender); //硬修正
        void __fastcall dkcwsjk(TObject *Sender);
        void __fastcall dkcwsjk1(TObject *Sender);
        void __fastcall bccwsjk(TObject *Sender);
        void __fastcall cjmkz(TObject *Sender);    //层间门槛值
        void __fastcall hdhf(TObject *Sender);  //厚度划分
        void __fastcall ljhdhf(TObject *Sender);  //老井厚度划分
        void __fastcall ljtzzxq(TObject *Sender);  //老井特征值求取
        void __fastcall xjtzzxq(TObject *Sender);  //新井特征值选取
        void __fastcall Frechetjl(TObject *Sender); //Frechet距离
         __fastcall paixu2(int nn,float mn[500][15],int pos); //老井排序
        void __fastcall xjsj(TObject *Sender);  //新井数据
        void __fastcall ljcjdysjk(TObject *Sender);  //老井沉积单元数据库
        void __fastcall xjcjdysjk(TObject *Sender);  //新井沉积单元数据库
        void __fastcall cjdyljsjk(TObject *Sender);  //沉积单元老井数据库
        void __fastcall xjwdjzxz(float dp1,float dp2,int iop);  //新井微电极最小值  返回深度
        void __fastcall Spearman(TObject *Sender);  //Spearman相关系数
     //    __fastcall Kjinlinjubumidu(int nn,float mn[500][15],int pos,int cwjd0);     //   K近邻局部密度
        void __fastcall bccjdysjk(TObject *Sender);   //保存沉积单元数据库
        void __fastcall charucjdy(TObject *Sender);
         int Ym;
        void __fastcall zdjzcjdyljsjk(TObject *Sender);  //自动加载沉积单元老井数据库
        void __fastcall zdljcjdysjk(TObject *Sender);      //自动老井沉积单元数据库
        void __fastcall zdjzxjcjdysjk(TObject *Sender);     //自动加载新井沉积单元数据库
        void __fastcall zdxjcjdysjk(TObject *Sender);      //自动新井沉积单元数据库
        void __fastcall zdbccjdysjk(TObject *Sender);   //自动保存沉积单元数据库
        void __fastcall zdbccjdydbsjk(TObject *Sender);   //自动保存沉积单元对比数据库
        void __fastcall dkzjlj073k(TObject *Sender);       //打开追加累计073库
        void __fastcall zj073k(TObject *Sender); //追加073库
        void __fastcall shujujiar073k(TObject *Sender); //数据加入073库
        void __fastcall pcldkckjLA(TObject *Sender);   //批处理打开参考井LA
        void __fastcall pcldkmbjLA(TObject *Sender);   //批处理打开目标井LA
        void __fastcall pcl(TObject *Sender);           //批处理
        void __fastcall bzc0(TObject *Sender);     //标准层
        void __fastcall bzcpaint(TObject *Sender);       //标准层绘图
        void __fastcall dtsjglmdwqd2(TObject *Sender); //标准层控制
        void __fastcall dtgmwqd2(TObject *Sender);   //标准层控制
        void __fastcall ljxjdb2(TObject *Sender); //老井新井对比 //标准层控制
       // void __fastcall lthead(TObject *Sender);
        void __fastcall xsjs(TObject *Sender);      //向上计算
        void __fastcall dtsjglmdwqd3(TObject *Sender); //标准层控制 向上计算
        void __fastcall dtgmwqd3(TObject *Sender);   //标准层控制 向上计算
        void __fastcall ljxjdb3(TObject *Sender); //老井新井对比 //标准层控制  向上计算
        void __fastcall ljxjdb4(TObject *Sender); //老井新井对比   标准层控制  向下计算
        void __fastcall dtgmwqd4(TObject *Sender); //动态概率密度弯曲度   标准层控制  向下计算
        void __fastcall dtsjglmdwqd4(TObject *Sender);  //动态时间概率密度弯曲度正式算法   标准层控制  向下计算
        void __fastcall xxjs(TObject *Sender);   //动态时间概率密度弯曲度正式算法     向下计算                                                                标准层控制  向下计算

        //  Dice
        void __fastcall Dice(TObject *Sender);
        void __fastcall Dsmaxmin(float D[1500],float Dmax,float Dmin);
        void __fastcall JDsmaxmin(float D[1500],int ie);
        void __fastcall JDsmaxminint(int JD[1500],int ie);
        void __fastcall Tice(TObject *Sender);
        void __fastcall Tice2(TObject *Sender);
        void __fastcall Dsmaxmin1(float D[1500],float Dmax,float Dmin);
        void __fastcall JDsmaxmin1(float D[1500],int ie);
        void __fastcall JDsmaxminint1(int JD[1500],int ie);
        void __fastcall paintfencengnewDice(TObject *Sender);
        void __fastcall Filter(float Filt[1500][15],int ie,float RMM[1500]);  //滤波
        void __fastcall AIC(TObject *Sender);             //智能计算
        void __fastcall AIBZC(TObject *Sender);  //智能标准层
        void __fastcall xzcorrect(TObject *Sender);//修正 2025-2-4日增加
        void __fastcall inputckj(TObject *Sender);
        void __fastcall AICcorrect(TObject *Sender);       //智能计算校正
        void __fastcall AIBZC2(TObject *Sender);     //智能标准层
        void __fastcall XFC(TObject *Sender);     //细分层
        void __fastcall AIXFC(TObject *Sender);     //智能细分层
        void __fastcall xzxfccorrect(TObject *Sender);    //修正细分层
        void __fastcall AICXFC(TObject *Sender);       //智能计算细分层
        void __fastcall AICXFCPearsonSYTD(TObject *Sender);       //智能计算细分层 皮尔森时域梯度
        void __fastcall XFCPearsonSYTD(TObject *Sender);     //细分层皮尔森时域梯度
        void __fastcall XFCDJMXZ(TObject *Sender);     //细分层底界面修正
        void __fastcall ljsjkxfccorrect(TObject *Sender);    //邻井数据库细分层修正
        void __fastcall XFCPearsonSYTDdcxz(TObject *Sender);     //细分层皮尔森时域梯度单层修正
        void __fastcall ljsjkxfcxz(TObject *Sender);    //邻井数据库细分层校正
        void __fastcall xfcpsxz(TObject *Sender);    //细分层皮时校正
        void __fastcall AICXFCcorrect(TObject *Sender);       //智能计算细分层校正
        void __fastcall AICXFCPearsonSYTD2(TObject *Sender);       //智能计算细分层 皮尔森时域梯度
        void __fastcall AICXFCljsjk(TObject *Sender);       //智能计算细分层 邻井数据库
	//void __fastcall PDCWJD(float q1[15000][50],float p1[500],int mbcw,int up2); //判断层位节点	// User declarations
        void __fastcall AIC2(TObject *Sender);       //智能计算
        void __fastcall JCxzcorrect(TObject *Sender);    //JCj夹层修正 2025-7-12日增加
        void __fastcall JCAICcorrect(TObject *Sender);       //JC智能计算校正
        void __fastcall ljsjkxfczxz(TObject *Sender);    //邻井数据库细分层总修正
        void __fastcall AICXFCljsjkzxz(TObject *Sender);       //智能计算细分层 邻井数据库总修正
        __fastcall TForm1(TComponent* Owner);
        //读取参考井DBF
        void __fastcall OpenDBS();
        //读取目标井DBF
        void __fastcall OpenDBT();
        //筛选邻井井号
        void __fastcall TForm1::SelectWell();
        void __fastcall TForm1::OpenDBS073();


        int MOD;
};
//---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
//---------------------------------------------------------------------------
#endif
