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

📄 dqbyhsj.cpp

📁 这是本人两年前兼职为某个公司做的石油钻进设计软件
💻 CPP
📖 第 1 页 / 共 5 页
字号:
	   for(i=1;i<=25;i++)
	   {
		   A1[i] = atof(sss[i * 3 - 3]);
		   A2[i] = atof(sss[i * 3 - 2]);
		   X[i] = sss[i * 3 - 1];
		   C1[i] = fabs(A1[i] - UMAX);
		   C2[i] = fabs(A2[i] - UMAX);
	   }
	   
	   B1 = C1[1];
	   B2 = C2[1];
	   
	   for(J1=2;J1<=25;J1++)
	   {
		   X1 = C1[J1];
		   if( X1 < B1)
		   {
			   B1 = X1;
		   }
	   }
	   
	   for(I1=1;I1<=25;I1++)
	   {
		   if( fabs(A1[I1] - UMAX) == B1)
		   {
			   T1 = X[I1];
			   break;
		   }
	   }
	   
	   for(J2=2;J2<=25;J2++)
	   {
		   X2 = C2[J2];
		   if( X2 < B2)
		   {
			   B2 = X2;
		   }
	   }
	   
	   for(I2=1;I2<=25;I2++)
	   {
		   if( fabs(A2[I2] - UMAX) == B2)
		   {
			   T2 = X[I2];
			   break;
		   }
	   }
	   
	   if( B1 > B2)
	   {
		   UOUTPUT = A2[I2];
	   }
	   else
	   {
		   UOUTPUT = A1[I1];
	   }
	   KV50BY = UOUTPUT / 480;
	   VDR50BY = VS50 / KV50BY;
	   UHZ = VDR50BY / 50;
	   FHZMAX = 50 * 470 / VDR50BY;
	   
	   //====================== 开始输出数据 ===================================================
	   Gcsz[1].TrimLeft();
	   Gcsz[1].TrimRight();
	   title="-         构造位置:"+Gcsz[1]+"\n";
	   Gcsz[2].TrimLeft();
	   Gcsz[2].TrimRight();
	   title1="-         完井方式:"+Gcsz[2]+"\n";
	   title2="-         补心海拔高度:"+Gcsz[8]+"m"+"\n";
	   Gcsz[3].TrimLeft();
	   Gcsz[3].TrimRight();
	   title3="-         最大井斜及位置:"+Gcsz[3]+"\n";
	   Gcsz[4].TrimLeft();
	   Gcsz[4].TrimRight();
	   title4="-         钻井日期:"+Gcsz[4]+"\n";
	   title5="-         目前地层压力:"+Gcsz[10]+"MPa"+"\n";
	   Gcsz[5].TrimLeft();
	   Gcsz[5].TrimRight();
	   title6="-         完井层位:"+Gcsz[5]+"\n";
	   title7="-         产层井段:"+Gcsz[6]+"\n";
	   title8="-         完钻井深:"+Gcsz[11]+"m"+"\n";
	   title9="-         气层中部深度:"+Gcsz[12]+"m"+"\n";
	   title10="-         完井套管:"+Gcsz[13]+"mm"+"\n";
	   title11="-         砂面深度:"+Gcsz[15]+"m"+"\n";
	   try
	   {
		   f3.WriteString("\n");
		   f3.WriteString("-      一、井的参数\n");
		   f3.WriteString("-       1.井的基本参数:\n");
		   f3.WriteString(title);
		   f3.WriteString(title1);
		   f3.WriteString(title2);
		   f3.WriteString(title3);
		   f3.WriteString(title4);
		   f3.WriteString(title5);
		   f3.WriteString(title6);
		   f3.WriteString(title7);
		   f3.WriteString(title8);
		   f3.WriteString(title9);
		   f3.WriteString(title10);
		   f3.WriteString(title11);
	   }
	   catch (CFileException exception3)
	   {
		   AfxMessageBox("Error reading file");
		   return;
	   }   
	   title="-       2.井的生产数据(从试井或正常自喷生产时获得):\n";
	   title1="-        ⑴ 井底温度T="+Gcsz[17]+"℃"+"\n";
	   title2="-        ⑵ 井淹死前自喷生产数据:\n";
	   title3="-           地层压力Pr="+Gcsz[10]+"MPa"+"\n";
	   title4="-           流动压力Pwf="+Gcsz[20]+"MPa"+"\n";
	   title5="-           产气量Qg="+Gcsz[21]+"m^3/d"+"\n";
	   title6="-           产水量Qw="+Gcsz[22]+"m^3/d"+"\n";
	   title7="-        ⑶ 目前生产数据:\n";
	   title8="-           产气量Qg= 0 m^3/d\n";
	   title9="-           产水量Qw= 0 m^3/d。\n";
	   title10="-           (井已淹死停产)\n";
	   try
	   {
		   f3.WriteString("\n");
		   f3.WriteString(title);
		   f3.WriteString(title1);
		   f3.WriteString(title2);
		   f3.WriteString(title3);
		   f3.WriteString(title4);
		   f3.WriteString(title5);
		   f3.WriteString(title6);
		   f3.WriteString(title7);
		   f3.WriteString(title8);
		   f3.WriteString(title9);
		   f3.WriteString(title10);
	   }
	   catch (CFileException exception3)
	   {
		   AfxMessageBox("Error reading file");
		   return;
	   }
	   title="-        ⑷ 井内介质情况:\n";
	   title1="-           ① 地层水\n";
	   title2="-               相对密度rw="+Gcsz[23]+"\n";
	   title3="-              硫化氢含量="+Gcsz[24]+"g/L(PPM)"+"\n";
	   title4="-              氯根含量="+Gcsz[25]+"g/L(PPM)"+"\n";
	   title5="-              总矿化度="+Gcsz[26]+"g/L(PPM)"+"\n";
	   title6="-           ② 天然气\n";
	   title7="-               相对密度rg="+Gcsz[27]+"\n";
	   title8="-              硫化氢含量="+Gcsz[28]+"g/m^3"+"\n";
	   title9="-        ⑸ 井场电源\n";
	   title10="-           电压=10kv,频率=50Hz\n";
	   try
	   {
		   f3.WriteString(title);
		   f3.WriteString(title1);
		   f3.WriteString(title2);
		   f3.WriteString(title3);
		   f3.WriteString(title4);
		   f3.WriteString(title5);
		   f3.WriteString(title6);
		   f3.WriteString(title7);
		   f3.WriteString(title8);
		   f3.WriteString(title9);
		   f3.WriteString(title10);
	   }
	   catch (CFileException exception3)
	   {
		   AfxMessageBox("Error reading file");
		   return;
	   }
	   title1="-        ⑹ 环境条件\n";
	   title2="-           井口环境温度=-3~40℃\n";
	   title3="-           年平均相对湿度=80%\n";
	   title4="-           地层水排放方式:排入卤水池计量后集输。\n";
	   title5="-           天然气排放方式:集输到气田管网。\n";
	   title6="-        ⑺ 该气藏(井)储量情况\n";
	   title7="-           采出程度="+Gcsz[30]+"%"+"\n";
	   title8="-           剩余储量="+Gcsz[31]+"×10^8 m^3"+"\n";
	   try
	   {
		   f3.WriteString(title1);
		   f3.WriteString(title2);
		   f3.WriteString(title3);
		   f3.WriteString(title4);
		   f3.WriteString(title5);
		   f3.WriteString(title6);
		   f3.WriteString(title7);
		   f3.WriteString(title8);
	   }
	   catch (CFileException exception3)
	   {
		   AfxMessageBox("Error reading file");
		   return;
	   }
	   title="-      二、机组的选择与计算\n";
	   title1="-        1.预测该井的最大供液量:\n";
	   i=int(QWMAX * 100);
	   gcvt(double(i)/100,100,temp);
	   title10=temp;
	   title2="-          Qw(max)="+title10+"m^3/d"+"\n";
	   title3="-        2.设计的电潜泵生产数据\n";
	   title4="-          ⑴ 油管排出口压力Pt=";
	   gcvt(PT,60,temp);
	   title4=title4+temp+"MPa"+"\n";
	   title5="-          ⑵ 泵的最小沉没度=";
	   gcvt(sink,60,temp);
	   title5=title5+temp+"m"+"\n";
	   i=int(0.5 + LHANG);
	   gcvt(i,100,temp);
	   title10=temp;
	   title6="-          ⑶ 泵挂深度H=";
	   title6=title6+title10+"m"+"\n";
	   gcvt(Q,80,temp);
	   title7="-        3.当选择的泵排量Qw=";
	   title7=title7+temp+"m^3/d时:"+"\n";
	   i=int(100 * PWFQ + 0.5);
	   gcvt(double(i)/100,100,temp);
	   title10=temp;
	   title8="-          井底流压Pwf=";
	   title8=title8+title10+"MPa"+"\n";
	   title9="-          最大复活压差为△P=";
	   i=int(100 * (prm - PWFQ) + 0.5);
	   gcvt( double(i)/ 100,60,temp);
	   title9=title9+temp+"MPa"+"\n";
	   try
	   {
		   f3.WriteString("\n");
		   f3.WriteString(title);
		   f3.WriteString(title1);
		   f3.WriteString(title2);
		   f3.WriteString(title3);
		   f3.WriteString(title4);
		   f3.WriteString(title5);
		   f3.WriteString(title6);
		   f3.WriteString(title7);
		   f3.WriteString(title8);
		   f3.WriteString(title9);
	   }
	   catch (CFileException exception3)
	   {
		   AfxMessageBox("Error reading file");
		   return;
	   }
	   i=int(HD + 0.5);
	   gcvt(i,100,temp);
	   title11=temp;
	   title="-        4.泵的静扬程为Hd="+title11+"m"+"\n";
	   i=int(H + 0.5);
	   gcvt(i,100,Temp);
	   title11=Temp;
	   title1="-          泵的总扬程为H="+title11+"m"+"\n";
	   gcvt(fz,50,temp);
	   title2="-          在频率f=";
	   gcvt(Q,50,temp);
	   title2=title2+temp+"Hz,排量Qw="+temp+"m^3/d,总扬程H=";
	   gcvt(int(H + 0.5),50,temp);
	   title2=title2+temp+"m时,"+"\n";
	   i=int(PD + 0.5);
	   gcvt(i,100,Temp);
	   title11=Temp;
	   title3="-          需要电机功率N="+title11+"kw。"+"\n";
	   gcvt(twjb,50,temp);
	   title4="-        5.根据该井的基本参数和上述计算结果,可以选择耐";
	   title4=title4+temp+"℃井温,耐盐水和硫化氢腐蚀的"+"\n";
	   title5="-          电潜泵机组作为排水采气的设备如下:\n";
	   try
	   {
		   f3.WriteString(title);
		   f3.WriteString(title1);
		   f3.WriteString(title2);
		   f3.WriteString(title3);
		   f3.WriteString(title4);
		   f3.WriteString(title5);
	   }
	   catch (CFileException exception3)
	   {
		   AfxMessageBox("Error reading file");
		   return;
	   }
	   title="-        ⑴ 多级离心泵\n";
	   title1="-           型号:"+AA[MX]+""+"\n";
	   i=int(0.5 + H5);
	   gcvt(i,100,Temp);
	   title11=Temp;
	   title2="-           扬程:"+title11+"m"+"\n";
	   gcvt(int(0.5 + Q5),60,temp);
	   title3="-           排量:";
	   title3=title3+temp+"m^3/d"+"\n";
	   i=int(0.5 + JS);
	   gcvt(i,100,Temp);
	   title11=Temp;
	   title4="-           级数:"+title11+"级"+"\n";
	   gcvt(DF,50,temp);
	   title5="-           外径:";
	   title5=title5+temp+"mm"+"\n";
	   i=int(0.5 + LJ*100);
	   gcvt(double(i)/100,100,Temp);
	   title11=Temp;
	   title6="-           长度:"+title11+"m"+"\n";
	   i=int(0.5 + WJ);
	   gcvt(i,100,Temp);
	   title11=Temp;
	   title7="-           重量:"+title11+"kg"+"\n";
	   try
	   {
		   f3.WriteString(title);
		   f3.WriteString(title1);
		   f3.WriteString(title2);
		   f3.WriteString(title3);
		   f3.WriteString(title4);
		   f3.WriteString(title5);
		   f3.WriteString(title6);
		   f3.WriteString(title7);
	   }
	   catch (CFileException exception3)
	   {
		   AfxMessageBox("Error reading file");
		   return;
	   }
	   title="-        ⑵ 旋转式分离器\n";
	   title1="-           型号:";
	   title1=title1+F+""+"\n";
	   gcvt(DF,60,temp);
	   title2="-           外径:";
	   title2=title2+temp+"mm"+"\n";
	   gcvt(LF,60,temp);
	   title3="-           长度:";
	   title3=title3+temp+"m"+"\n";
	   gcvt(WF,60,temp);
	   title4="-           重量:";
	   title4=title4+temp+"kg"+"\n";
	   title5="-        ⑶ 电机\n";
	   gcvt(DXH,60,temp);
	   title6="-           50Hz";
	   title6=title6+temp+"系列\n";
	   i=int(0.5 + NDJ);
	   gcvt(i,100,Temp);
	   title11=Temp;
	   title7="-           功率:"+title11+"Kw"+"\n";
	   gcvt(VE,60,temp);
	   title8="-           电压/电流:";
	   gcvt(IE,60,Temp);
	   title8=title8+temp+" V/"+Temp+" A"+"\n";
	   gcvt(DDJ,60,temp);
	   title9="-           外径:";
	   title9=title9+temp+"mm"+"\n";
	   gcvt(DLJ,60,temp);
	   title10="-           长度:";
	   title10=title10+temp+"m"+"\n";
	   gcvt(DWJ,60,temp);
	   title11="-           重量:";
	   title11=title11+temp+"Kg"+"\n";
	   try
	   {
		   f3.WriteString(title);
		   f3.WriteString(title1);
		   f3.WriteString(title2);
		   f3.WriteString(title3);
		   f3.WriteString(title4);
		   f3.WriteString(title5);
		   f3.WriteString(title6);
		   f3.WriteString(title7);
		   f3.WriteString(title8);
		   f3.WriteString(title9);
		   f3.WriteString(title10);
		   f3.WriteString(title11);
	   }
	   catch (CFileException exception3)
	   {
		   AfxMessageBox("Error reading file");
		   return;
	   }
	g_iProgress = 50;	// 计算进度
	ENDCOMPUTE;
	   title="-        ⑷ 保护器(双连皮囊沉淀式保护器)\n";
	   title1="-           外径:130 mm\n";
	   title2="-           长度:4.01 m\n";
	   title3="-           重量:240 Kg\n";
	   title4="-        ⑸ 电力电缆\n";
	   title5="-           4#电力电缆\n";
	   title6="-           耐压:3~4 Kv\n";
	   gcvt(ldl,60,temp);
	   title7="-           长度:";
	   title7=title7+temp+"m"+"\n";
	   gcvt(WD,60,temp);
	   title8="-           重量:";
	   title8=title8+temp+" Kg"+"\n";
	   try
	   {
		   f3.WriteString(title);
		   f3.WriteString(title1);
		   f3.WriteString(title2);
		   f3.WriteString(title3);
		   f3.WriteString(title4);
		   f3.WriteString(title5);
		   f3.WriteString(title6);
		   f3.WriteString(title7);
		   f3.WriteString(title8);
	   }
	   catch (CFileException exception3)
	   {
		   AfxMessageBox("Error reading file");
		   return;
	   }
	   title="-        ⑹ 小扁电缆\n";
	   title1="-           耐压:5Kv\n";
	   i=int(LJ + LF + 4.01 + 0.5)+3;
	   gcvt(i,100,Temp);
	   title11=Temp;
	   title2="-           长度:"+title11 +"m"+"\n";
	   title3="-        ⑺ 井下监控装置\n";
	   title4="-           类型:PHD\n";
	   title5="-           测压范围:0~21.4 MPa\n";
	   title6="-           重量:25 Kg\n";
	   try
	   {
		   f3.WriteString(title);
		   f3.WriteString(title1);
		   f3.WriteString(title2);
		   f3.WriteString(title3);
		   f3.WriteString(title4);
		   f3.WriteString(title5);
		   f3.WriteString(title6);
	   }

⌨️ 快捷键说明

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