水電站動力設備CAD_第1頁
水電站動力設備CAD_第2頁
水電站動力設備CAD_第3頁
水電站動力設備CAD_第4頁
水電站動力設備CAD_第5頁
已閱讀5頁,還剩122頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、水電站動力設備CAD 第一講 緒論講授內容: ()計算機輔助設計系統的構成()常用的語言與平臺()水電站動力設備的特點講授時間:學時講授方式:課堂教學重點:水電站動力設備的特點與功能學習要求:對水電站動力設備形成初步認識學習本課程的目的與方法計算機計算方法專業(yè)設計橋梁基礎本課程的主要內容:)技術資料的計算機處理)圖形的計算機處理)實用工程程序的設計本課程與的區(qū)別:一種專用工程圖設計工具本課程:針對水電站動力設備工程設計的實用技術與技巧。第一節(jié):支持的必要硬件系統一、工程的功能要求)技術資料的計算機處理)計算與分析:常規(guī)計算、數值計算、邏輯分析)圖形的處理:技術資料中的圖形處理工程圖形的設計與繪

2、制)設計文件的形成:設計說明書、計算書等二、系統硬件、主機:足夠大的內存與較快的運算能力。2、輸入設備:1)文字輸入:鍵盤、手寫、語音。2)圖形輸入:鍵盤、數字化儀、掃描儀等。3、輸出設備:1)顯示器(高分)、2)打印機、3)繪圖儀。三、軟件系統1、操作平臺:dos,WindowsUnix 等2、語言環(huán)境:QB、C、VB、Fortran等3、輔助軟件:支持繪圖儀、掃描儀、打印機的軟件四、水電站動力設備CAD的特點1、復雜系統的設計:設備選擇、計算、系統設計、設備設置等,過程復雜。2、不確定性:各種可能方案、人為因多。3、程序的智能化要求:設計思想設計數學模型程序。4、綜合過程:設計方案擬定設計

3、計算方案比較與評價工程圖繪制5、需要解決的問題1、大量技術資料的計算機處理:存取、引用。2、人的設計思想的程序化。3、通用、專用應用程序的設計。第二講、技術資料的計算機處理本講內容 1)技術資料的種類及在工程中的應用。 2)技術資料處理的原則 3)文字型技術資料的處理講授時間:2學時授課方式:課堂教學重點: 技術資料處理原則學習要求:了解用計算機處理技術資料的基本思路。一、技術資料的種類及在工程中的應用1、文字型:用文字描述的技術資料:設計規(guī)程,設計方法說明、指令性文件。設計的重要依據2、數表型:用表格形式表達的數據(數據資料)來源于函數、統計(經驗)、試驗。設計依據(參數選擇)。3、線圖類:

4、用曲線表達的技術資料(數據類)。來源于函數、統計(經驗)、試驗。設計依據(參數選擇)。4、圖形類:用圖形描述的技術資料:如結構圖(結構原理與尺寸)、系統圖(如水電站水系統、電站住接線圖等、系統元素構成、邏輯關系年)、5、圖片類:用圖派片描述的技術資料(照片、效果圖、三維圖形等,表達實物形貌、色彩及其視覺效果)。二、計算機處理技術資料的一般原則:適應不同目的有不同的處理方式、(閱讀)索引:原文錄入,按章節(jié)、作者、頁碼、關鍵詞檢索。、數據引用:按數據的函數關系輸入,用檢索或插值引用。三、文字型資料的計算機處理、文字型資料例子:“發(fā)電機轉子允許線速度與轉子結構、材料的關系”:“發(fā)電機轉子線速度與轉子

5、材料與結構有關,A3鋼板疊裝的轉子,為 m/s. ,高強度鋼板疊裝的轉子,可達 m/s. ,整環(huán)裝配或鍛造的轉子,為m/s.2、處理方法:找出數據函數關系變?yōu)閿当戆春瘮店P系輸入數表)函數關系:Uf=(轉子材料與結構)2)數表化:序號轉子材料與結構T(I)線速度下限Uf1(I)線速度上限Uf2(I)123A3鋼板T(1)高強度鋼板T(2)整環(huán)鋼板或鍛造T(3)1101551601201551703) 數組化T(I)=1,2,3;Uf1(I)=110,155,160;Uf1(2)=120,155,170;4) 數組輸入計算機5)引用:給出T(I), 檢索Uf1(I),Uf2(I)其他例子:水輪機調

6、節(jié)保證計算 水輪機蝸殼壓力上升允許值:水輪機蝸殼壓力上升最大允許值:額定水頭在40米以下時不得大于70%,額定水頭在40100米時不得大于50%,額定水頭在100米以上時不得大于30%。處理方法:1、數表化水輪機水頭H(m)蝸殼壓力上升允許值H/H(%)100=70=50=30水輪機水頭下限H1(I)(m)水輪機水頭上限H2(I)(m)蝸殼壓力上升允許值DH(I) 041101401007000.70.50.32、數組標準化3、數表輸入計算機第二講 技術資料的計算機處理數表、曲線的處理一、數表的處理 1、數表的種類與特征 種類:函數數表、經驗數表、試驗數表; 特征1:規(guī)則數表、不規(guī)則數表。 特

7、征2:一維、二維、多維2、處理原則:便于儲存、便于引用二、一維數表1、規(guī)則一維數表的處理定義:表達y=f(x)關系的數表形式:軸流式水輪機軸向水推力系數K 與葉片數的關系:z14 5 6 7 8 K0.85 0.87 0.90 0.93 0.95處理方法1)用兩個一位數組分別表示自變量余函數Z1(i)=4,5,6,7,8;K(i)=0.85,0.87,0.90,0.95,0.95;2)按照對應關系輸入兩個數組;3)引用:給定z1(i),檢索K(I).2、不規(guī)則一維數表的處理(1)不規(guī)則數表:自變量或函數是一個區(qū)間的數表轉輪直徑D1(m)9.0導葉數目z012 16 24 32(2) 處理法數表

8、改造:轉輪直徑下限D11(I)0 1.0 2.5 9.0轉輪直徑上限D12(I)1.0 2.25 8.5 12.0導葉數目z0(I)12 16 24 32用兩個一維數組分別表示自變量的山下限,用兩個一維數組 表示函數D11i=0,1.0,2.5,9.0;D12i=1.0,2.25,8.5,12.0;Z0i=12,16,24,32;按照對應關系輸入三個數組;引用:給定D1,用D11(i)D1Q11;n11(J)n11Em(I,j)mQ11 =700,750,800,850,900;N11 =60,70,.;E11 =0.80,0.82,0.84,0.83;0.81,0.83,0.85,0.84,

9、;把三個數組Q11(i)、n11(J)、Em(I,j)按照對應關系輸入計算機;引用:用二元插值計算法應用。2、不規(guī)則二維數表的處理不規(guī)則二維數表的形式 水輪機轉子估重公式:G=krDi2Lt G-轉子帶軸重量(t);Di-轉子鐵心外徑; Lt-鐵心長度; Kr=f(Di,n)發(fā)電機轉速 n(r/min) Di(m) Kr備注214750150240=5594.36.83.14.0高速機組Di小kr取上限處理原則與方法原則:模擬人工方法,便于計算機輸入輸出。方法:根據Di和n所在范圍確定kr步驟:1)數表標準化變換 轉速n 鐵心直徑Di Kr下限n1(i)上限n2(i)下限Di1(i)上限Di2

10、(i)下限Kr1(i)上限Kr2(i)214750054.36.8150240593.14.02、把6個一位數組按對應關系輸入計算機3、引用:以Di1(i)DiDi2(i) and n1(i)nn2(i)為條件檢索kr的范圍kr1(i)與kr2(i)用插值法確定kr: 應用備注中高速機組Di小kr取上限地說明,用線性插值求取kr值,即認為kr與轉速成正比:Kr=(kr2(i)-Kr1(i)/(n2(i)-n1(i)*(n-n1(i)+kr1(i)第三講 技術資料的計算機處理曲線的處理 *曲線的特征與處理原則1、曲線的種類與特征 種類:函數曲線、經驗曲線、試驗曲線; 特征1: 不同維數的曲線:一

11、元曲線、二元曲線(曲面) 特征2:簡單曲線、復雜曲線。2、處理原則:離散化(數字化)、便于存儲,便于引用。一、一元曲線的處理1、曲線的離散與存儲ii+11nyixi把曲線離散位n隔離散點:xi,yi用兩個一維數組分別表示自變量余函數:X(I)Xi;Y(I)Yi查處個點X(I),Y(I)值 ,把數組X(I),Y(I)輸入計算機。2、曲線的引用:用一元插值計算引用曲線,給定x,求y.二、二元曲線的離散處理1、二元曲線的特點:曲面的平面表示n11Q11=f(Q11,n11)2、直接離散:在曲線上直接取點離散i=1i=2i=3J=1J=2J=3 i,jni,jQi,j 離散步驟:1)在曲線上直接取點離

12、散2)等值線序號i=1,2,3,m;點序j=1,2,3,.n3)坐標參數:用二維變量表示: i ;Q11(I,j)Q11;n11(I,j)n11)引用:用復雜的插值方法引用曲線。直接離散法的優(yōu)缺點優(yōu)點:保持圖形幾何特征,便于圖形復原;缺點:插值計算復雜。2、間接里散法n11(j)Q11(I) i,j正交網格離散法1)用一正交網格覆蓋曲線,用網格的 節(jié)點離散曲線;2)用兩個一維數組表示曲線坐標參數,用一個二維數組表示函數: Q11Q11(I); n11n11(J); EM(I,j) i,j3)把三個數組輸入計算機;4)用二元插值引用曲線優(yōu)點:便于插值計算;缺點:失去曲線幾何特征,曲線復原困難。非

13、正交網格離散法=-50=00=+50=+100Q11(I,j)N11(j) i,j非正交網格離散法1)用一非正交網格覆蓋曲線,用網格的節(jié)點離散曲線;2)用兩個一維數組何一個二維數組表示曲線坐標參數,用一個二維數組表示函數: Q11Q11(I,j); n11n11(j); EM(I,j) i,j3)把三個數組輸入計算機;4)用二元插值引用曲線第四講 數據的計算機存取講授內容:計算機數據存儲的基本方法及程序設計講授時間:2學時講授方式:課堂教學重點:數據文件的操作學習要求:掌握數據存取程序的設計一、數據的作用及類型1、作用:為程序中的變量賦值。2、類型:數字、字符串(文字)、邏輯。3、數學特征:單

14、數據、一維數組、二維數組、多維數組4、應用特征:1)公用數據:程序中不變更的數據,如、水輪機選型程序中的型譜參數。2)可替換數據:通用程序中針對不同情況要更換的數據,如水輪機特性曲線計算程序中的模型曲線參數。3)共享數據:不同程序共同使用的數據。例如,水輪機模型曲線參數可以在很多程序中用。二、數據的存放方式1、直接為變量賦值:a=2.5; int c=2000, int b4=1,2,3,4;適用于少量數據。2、某些語言的讀數據語句: 如basuc: read a,b,c:data 2,3,4適用于各種數據,語言限制。3、鍵盤輸入:basic:input “x”;x; C: scanf(“%d

15、%f”;&a,&b);少量會話數據。4、用數據文件方式存放數據 存(寫文件):數據計算機內存(變量)磁盤文件 取(讀文件):磁盤文件計算機內存(變量) 適用大量需要成塊變更的數據,共享數據。三、數據存取的基本要求1、統一的數據結構形式:i=1 2 3 .m J=nJ=2J=1m=15;n=10Q11=300,400,500,.1200;N11=60,70,80,.120;E=0.75,0.76,0.77.,0.76,0.77.0.78,;2、標準的接口:如上:m,n,Q11i,n11j,Eij3、可實現共享的數據表達方式:二進、八進、十六進等、ASCII碼, ASCII碼可供不同語言的程序調用

16、。四、用文件方式存取數據的方法及程序設計C語言文件的操作:程序數據區(qū):A(3,4)=1, 3 , 4 , 5, 5 ,6 , 7 ,8, 9, 8, 7, 6;輸出文件緩沖區(qū)輸入文件緩沖區(qū)磁盤文件基本指令1)文件指針變量:FILE *fp;2) 打開文件的方式:fp=open(“abc”,使用方式);使用方式:r- 讀 W-寫r+- 讀,寫等3) 寫數據:int a=5;fprintf(fp,”%d”,a); float b=0.25; fprintf(fp,”%f”,b); char c=“word”;fprintf(fp,”%c”,c);4) 讀數據: fp=open(“abc”,”r”)

17、; fscanf(fp,”%d” ,&a); 寫數據程序 #includestdio.h main() FILE *fp;int i,j, floate155=.1,.2,.3,.4,.5,.2,.3,.4,.5,.6,.3,.4,.5,.6,.7,.4,.5,.6,.7,.8,.3,.4,.5,.6,.7; fp=fopen(HL180.doc,w); for(i=0;i5;i+) for(j=0;j5;j+) fprintf(fp,%5.2f,e1ij); fprintf(fp,n); fclose(fp);讀數據程序 #includestdio.h main() FILE *fp;int

18、 i,j,; floate155; fp=fopen(HL180.doc,“r); for(i=0;i5;i+) for(j=0;j5;j+) fscanff(fp,%5.2f,e1ij); fprintf(fp,n); fclose(fp);讀寫“HL180”水輪機效率曲線的程序 #includestdio.h main() FILE *fp; int i,j,n15=50,60,70,80,90; int q15=500,600,700,800,900; float e155=.1,.2,.3,.4,.5,.2,.3,.4,.5,.6,.3,.4,.5,.6,.7,.4,.5,.6,.7,

19、.8,.3,.4,.5,.6,.7; fp=fopen(HL180.doc,w); for (i=0;i5;i+)for (j=0;j5;j+) fprintf(fp,%5d,q1j);for(i=0;i5;i+) for(j=0;j5;j+) fprintf(fp,%5.2f,e1ij);fclose(fp); fp=fopen(“hl180”,“r”); for (i=0;i5;i+) fscanf(fp,“%5d”,&n1i); printf(“%5d”,n1i); for(j=0;j5;j+) fscanf(fp,“%5d”,&q1j); printf(“%5d”,q1j); for(

20、i=0;i5;i+) for(j=0;j5;j+) fscanf(fp,%5.2f,&e1ij); printf(%5.2f,e1ij); fclose(fp);第三章 數值逼近及其在CAD中的應用本章內容:數值逼近法及程序設計,包括:插值、擬合重點:一元、二元插值程序設計難點:曲線、曲面擬合教學方法:重點講解程序設計的思路與技巧學時:4第一講插值計算基本方法與程序設計1、一元線形插值2、一元拋物線插值3、二元線性插值4、復雜曲線的插值計算 1、一元線性插值kk+11nYk+1yykXk X Xk+1y=(yk+1-yk)/(Xk+1-Xk)*(X-Xk)+YK程序設計1)曲線離散:x(i),

21、y(i); 數據輸入計算機;2)給出插值變量x;3)判斷插點位置:k,k+14)應用插值公式:y=(yk+1-yk)/(Xk+1-Xk)*(X-Xk)+YK程序例: /*一元插值以計算混凝土蝸殼進口斷面流速為例*/ #includestdio.h main() int i,x6=10,20,30,40,50,60; float z,a; float y6=2.85,3.75,4.55,5.2,5.8,6.45; printf(請輸入設計水頭hr的值n); scanf(%f,&z); for(i=1;i6;i+) if(z=xi) a=yi-1+(yi-yi-1)/(xi-xi-1); prin

22、tf(設計水頭hr為n%5.2f,z); printf(n進口斷面流速為n%5.2f,a); 2、一元拋物線性插值121nY3y2y1X1 X2 X3完全多項式:Y=a0+a1X+a2X23原理Y1=a0+a1x1+a2x12Y2=a0+a1x2+a2x22Y3=a0+a1x3+a2x32解聯立方程組,求出a0、a1、a2,可獲得擬合式。缺點:需要解聯立方程組。實用式:y=a0+a1(x-x1)+a2(x-x1)(x-x2)1點;y1=a0+a1(x1-x1)+a2(x1-x1)(x1-x2) 得:y1=a02點: y2=a0+a1(x2-x1)+a2(x2-x1)(x2-x2) 得:a1=3

23、點: y3=a0+a1(x3-x1)+a2(x3-x1)(x3-x2)得:a3= 歸納程序設計1)曲線離散:x(i),y(i); 數據輸入計算機;2)給出插值變量x;3)判斷插點位置: k-1,k,k+14) 計算擬合系數a0、a1、a24)應用插值公式: y=a0+a1(x-xk-1)+a2(x-xk-1)(x-xk)程序例: /*拋物線插值以計算hl200飛逸轉速為例*/ #includestdio.h #includemath.h main() int i; float z,a1,a2,a3,m,x6=0,10,20,30,40,50; float y6=0,100,116,123,12

24、7.5,128; printf(請輸入開度a0的值n); scanf(%f,&z); for(i=1;i6;i+) if(z=xi) break; if(i=1) i=z+1; c=(yi-yi-2)/(xi-xi-2); c=c-(yi-1-yi-2)/(xi-1-xi-2); a2=c/(xi-xi-1); a1=(yi-1-yi-2)/(xi-1-xi-2); a0=yi-2; m=a0+a1*(z-xi-2)+a2*(z-xi-2)*(z-xi-1); printf(開度a0=%f(mm)n飛逸轉速=%f(rpm),z,m);3、二元插值及程序設計(1)正交網格的二元線性插值ZA=f(

25、Xa,Ya)=f(Zi,j,Zi,j+1,Zi+1,j,Zi+1,J+1)Yj+1YjXiXi+1Zi,jZi,j+1Zi+1,j+1Zi+1,jXaYaAZAii+1j+1j21二元插值方法1、插值計算式1)沿X單方向插值Z1=(Zi+1,j-Zi,j)/(Xi+1-Xi)*(Xa-Xi)+Zi,jZ2=(Zi+1,j+1-Zi+1,j)/(Xi+1-Xi)*(Xa-Xi)+Zi+1,j2)沿Y單方向插值ZA=(Z2-Z1)/(Yj+1-Yj)*(Ya-Yj)+Z12) 二元線性插值綜合式令p= (Xi+1-Xi)*(Xa-Xi); q= (Yj+1-Yj)*(Ya-Yj);則:ZA=(1-

26、p)(1-q)Zi,j+(1-p)qZi,j+1+p(1-q)Zi+1,j+pqZi+1,j+1 二元線性插值綜合式(2)非正交網格的二元線性插值YXYj+1YjXi,jXi+1,jJ+1J12YAXAAX1X2Zi,jZi+1,jZi,j+1Zi+1,j+1Z1Z2插值計算方法(1)沿斜線單方向插值Z1=(Zi,j+1-Zi,j)/(Yj+1-Yj)*(Xi,j+1-Xi,j)+Zi,jZ2=(Zi+1,j+1-Zi,j+1)/(Yj+1-Yj)*(Xi,j+1-Xi,j)+Zi,jX1=(Xi,j+1-Xi,j)/(Yj+1-Yj)*(Xi,j+1-Xi,j)+Xi,jX2=(Xi+1,j

27、+1-Xi,j+1)/(Yj+1-Yj)*(Xi,j+1-Xi,j)+Xi,j(2) 沿水平單方向插值ZA=(Z2-Z1)/(X2-X1)*(XA-X1)+X1 二元線性插值程序的設計1、用二維數組如數法存儲二維數表或二元曲線:X(I),y(j),z(I,j)2、給定插點坐標:Xa,ya3、用X(I)XaX(I+1)判斷插點相鄰序號i0,i0+1; 用y(j)yay(j+1)判斷插點相鄰序號j0,j0+1;4、求p,q5、求Za #includestdio.h #includemath.h main() int i,j; float xa,ya,z1,z2,za; float x5=0.22,

28、0.26,0.30,0.34,0.38; float y5=50,55,60,65,70; float z55=0.865,0.868,0.863,0.845,0.812,0.86,0.887,0.891,0.879,0.848,0.857,0.88,0.902,0.899,0.878,0.852,0.886,0.9,0.901,0.885,0.831,0.868,0.883,0.88,0.86; printf(請輸入插值點的q1值和n1值(0.22=q1=0.38:50=n1=70)n); scanf(%fn%f,&xa,&ya); for(i=1;i5;i+) if(xa=xi) brea

29、k; for(j=1;j5;i+) if(yaX(I) THEN 1I0=1:GOTO 2NEXT IFOR J=1 TO 3IF YY(J) THEN 3J0=J:GOTO 4NEXT JP=(X-X(I0-1)/(X(I0)-X(I0-1)Q=(Y-Y(I0-1)/(Y(I0)-Y(I0-1)Z=P*(1-Q)*Z(I0,J0-1)+Q*(1-P)*Z(I0-1,J0)+(1-P)*(1-Q)*Z(I0-1,J0-1)+P*Q*Z(I0,J0) xy1020301000.50.60.72000.70.80.93000.80.91.0第三章 數值逼近及其應用內容:曲線、曲面擬合原理及其應用重

30、點:最小二乘法曲線、曲面擬合及其程序設計應用:一元曲線擬合、二元曲線擬合難點:擬合程序設計教學要求:掌握曲線擬合原理、編制曲線擬合程序 1、一元曲線的擬合21n完全多項式:Y=a0+a1X+a2X2+anXn3(1)直接擬合1)擬合式:完全多項式, Y=a0+a1X+a2X2+anXn n -1次多項式,n個待定系數。2)建立聯立方程組: a0+a1X1+a2X12+anX1n=y1 a0+a1X2+a2X22+anX2n=y2 . a0+a1Xm+a2Xm2+anXmn=ym 3) 解聯立方程組求待定系數a0an 缺點:點數多時,失真。 曲線失真21n完全多項式:Y=a0+a1X+a2X2+

31、anXn3(2)最小而乘法擬合已知點:xi,yi;選擇擬合式(次數n)各型值點的擬合誤差:誤差平方和:最佳擬合條件Smin:寫成矩陣形式:M.a=T a=a0 a1 a2 am求待定系數解聯立方程組,求a0 a1 a2 am。最小二乘法優(yōu)點:擬合式次數較低,曲線平滑,失真小,你和精度高。 k=1k=2k=3Z kYkXk2、二元曲線(曲面)的擬合 元曲線:曲面的平面表示以等高線形式表達的面。擬合式:1)直接擬合:在曲線上直接取點建立擬合式。以m=n=2展開擬合式在曲線上取9點建立擬合式,組成聯立方程組,解之求出待定系數a00a22即獲得擬合式。2)最小而乘擬合:原理同單曲線擬合擬合原理1、曲面

32、離散:xk,yk,zk2、選擇擬合式:完全二元多項式3、擬合誤差:4、最佳擬合條件:smin即:以m=n=2展開: P=0,q=0a00 xk0 yk0+a10 xk1yk0+a20 xk2yk0+a01xk0 yk1+a11xk1yk1+a21xk2yk1+a02xk0 yk2+a12xk1yk2+a22xk2yk2P=0,q=0寫成矩陣形式:1 x x2 y xy x2y y2 xy2 x2y2xx2.yxy3x2y2 . x2y2M=T=Z xZ X2Z yZ XyZ X2yZ . X 2y2Z Ta= a00 a10 a20 a01 a11 a21 a02 a12 a22T解聯立方程組

33、,求出a00a22,得擬合適。程序設計1、離散曲線:Xk,yk,zk;2、選擇擬合式及擬合式次數m,n:3、計算矩陣M,T4、解聯立方程組求a00amn5、代入x值求y值。應用:水輪機模型特性曲線擬合1、等效率線:2、等開度線:3、等空化系數線:第四章 圖型的計算機處理本章內容:1)計算機圖形處理的基本方法)圖形的輸入;)圖形的輸出;)通用曲線繪制程序的設計重點:圖形輸入輸出及繪圖程序設計難點:程序設計思路與技巧要求:掌握圖形輸入輸出及繪圖程序設計第一講圖形輸入計算機的方法一、基礎知識1、圖形計算機處理的內容 1)圖形輸入計算機的方法:把現有的圖形輸入到計算機中; 2)圖形的計算機繪制:把設計

34、好的圖形輸出(顯示、打?。?3)圖形的計算機設計:有計算結果構造圖形;2、計算機繪制圖形的基本知識1)圖形的顯示:用象素(繪圖點)(pixel,dot)及色彩(color)顯示圖形;0,0640,00,400640,400Basic基本繪圖指令11.畫點: PESET(X,Y),COLOR-在X,Y位置畫一點 2.畫線: LINE(X1,Y1)-(X2,Y2)-在X1,Y2-X2,Y2間畫直線 3.畫園: CIRCLE(X,Y),R-以X,Y為園心,以R為半徑畫園 4.畫園弧: CIRCLE(X,Y),R,COLOR,XT1,XT2-以X,Y為園心,R為半徑,XT1為起始角(弧度), XT2

35、為終止角(弧度)畫園弧. 5.輸出數字或文字: LOCATE 行,列:PRINT X:-在某行,列處顯示X的值Basic基本繪圖指令2. DRAW指令: U:向上畫:U20-向上畫20單位; D:向下畫:D30-向下畫30單位; R,L-向右,左畫 Mx,y:向任意方向(x,y)畫; M+20,-10:從當前位置畫到+20,-10處; B:走筆不畫線:BL20-向左空走20單位;BM+10,-10:-向+10,-10方向空走; 使用:DRAW D20R30U20L30-畫一20*30的矩形; A$=D20R30U30L20:DRAW A$C語言基本繪圖指令11.畫點: PUTPIXEL(INT

36、 X,INT Y,COLOR);-在X,Y位置畫一點; 2.畫線: LINE(INT X1,INT Y1,INT X2,INT Y2);-在X1,Y1-X2,Y2間畫一直線 LINEREL(INT DX,INT DY);-從現行位置到增量DX,DY畫一線段 3.畫矩形: RECTANGLE(INT X1,INT Y1,INT X2,INT Y2);-以X1,Y1-X2,Y2為對角線畫矩形 4、畫園: CIRCLE(INT X,INT Y,INT R);-以X,Y為園心,R為半徑畫園 5、畫園弧: ARC(INT X,INT Y,INT XT1,INT XT2,R);-以X,Y為園心,R為半徑,

37、XT1為起始角,XT2(角度0360)為終止角畫園弧C語言基本繪圖指令2文本輸出: OUTTEXTXY(INT X,INT Y,文字);-在X,Y位置寫文本字串數字輸出: CHAR S10 -定義一字符串 SPRINTF(S,%f,int x);-把整數變量X變?yōu)樽址甋 outtextxy(x,y,s);-在X,Y位置顯示數字S(即X) 三指令配合使用二、圖形輸入計算機的方法1、離散點輸入法:通過對曲線的離散處理,把曲線坐標點的參數輸入計算機 。1)圖形分割為若干(m)部分;2)曲線離散為坐標點(x(I,j), y(I,j);i各分割曲線序號; J曲線點序號;3) 把數組x(I,j),y(I

38、,j)輸入計算機。4)用曲線繪制法顯示圖形。1234二、圖形輸入計算機的方法12341、離散點輸入法:通過對曲線的離散處理,把曲線坐標點的參數輸入計算機 。1)圖形分割為若(n) 部分;2)曲線離散為坐標點(x(I,j), y(I,j);i各分割曲線序號; J曲線點序號;3) 把數組x(I,j),y(I,j)輸入計算機。4)用曲線繪制法顯示圖形。分割曲線條數:4各曲線點數:M(1)=7M(2)=7M(3)=6M(4)=6離散點輸入法程序設計1、圖形輸入:QB n=4Dim m(4),x(4,10),y(4,10)For i=1 to m:read M(I):next iData 7,7,6,6

39、For i=1 to n: for j=1 to m(i)Read x(I,j),y(I,j)Next j,IData x(I,j),y(I,j),.2、繪圖程序Screen 12For i=1to n: for j= 1 to m(i)-1Line(X(I,j),y(I,j)-(x(I,j+1),y(I,j+1)Next j,i圖形輸入計算機的方法2、圖形元素輸入法圖形元素:點、直線、圓?。▓A)、自由曲線。點:x(i),y(i)直線:始終點:x1(i),y1(i), x2(i),y2(i)圓:圓心及半徑:xc(i),yc(i), rc(i)圓?。簣A心及半徑:xa(i),ya(i), ra(i

40、),始終角:xt1(i),xt2(i)自由曲線:離散點坐標:x(I,j), y(I,j)直線圓圓弧自由曲線圖素輸入法程序設計 #includestdio.h #includemath.h #includegraphics.h main() int i; /*輸入圓參數:園心與半徑*/ int xc4=100,100,200,200; int yc4=200,200,200,200; int rc4=10,20,10,20; /*輸入園弧參數:園心,半徑,始.終角*/ int xa2=100,200; int ya2=200,200; int ra2=30,30; int xt12=0,0; i

41、nt xt22=180,180; /*輸入 直線參數:起點與終點坐標*/ int x19=80,100,140,140,280,280,170,70,40; int y19=150,120,120,150,150,200,200,200,200; int x29=100,140,140,280,280,230,130,40,40; int y29=120,120,150,150,200,200,200,200,170; /*輸入自由曲線:x(i),y(i)*/ int x5=40,50,60,70,80; int y5=170,162,156,152,150; 繪圖程序設計/*圖形初始化*/

42、int graphdriver=DETECT,graphmode=1; initgraph(&graphdriver,&graphmode,); cleardevice(); /*繪園*/ for(i=0;i=3;i+) circle(xci,yci,rci); /*畫園弧*/ for(i=0;i=1;i+) arc(xai,yai,xt1i,xt2i,rai); /*畫直線*/ for(i=0;i=8;i+) line(x1i,y1i,x2i,y2i); /*畫自由曲線*/ for(i=0;ix(I,j) then xmin=x(I,j)If xmax計算機屏幕坐標ymaxxmaxyxLHX

43、minymin坐標轉換式:XL: L=L0/(xmax-xmin)*(x-xmin)+DLYH: H=H0/(ymax-ymin)*(ymax-y)+DH多條曲線:X(I,j)L(I,j)Y(I,j)H(I,j)L(I,j)=L0/(xmax-xmin)*(x(I,j)- xmin)+DLH(I,j)=H0/(ymax-ymin)*(ymax-y(I,j)+DHH0L0DHDL4、曲線繪制For i=1 to mFor j=1 to n(i)-1Line(L(I,j),H(I,j)-(L(I,j+1),H(I,j+1)Next j,I5、坐標軸繪制刻度繪制X1=dL-3:x2=dL+3For

44、i=1 to nY1=H0-H0/(n-1)*i+dH: y2=y2Line(x1,y1)-(x2,y2)Next I刻度標注For i=1 to nYi=(ymax-(ymax-ymin) /(n-1)*i+yminHi=y1/16+DHLocate 2,Hi:print yiNext iX1,y1X2,y2ymaxyminH0N等分dHdLi刻度X1=dL-3:x2=dL+3Y1=H0-H0/(n-1)*i: y2=y2 210Basic 曲線繪圖程序10 DIM X(5, 100), y(4, 100), L(4, 100), H(4, 100), A%(1000)REM 計算正,余弦曲

45、線20 FOR J = 1 TO 3030 X(1, J) = 6.28 / 29 * (J - 1): y(1, J) = SIN(X(1, J): y(2, J) = COS(X(1, J): X(2, J) = X(1, J)40 NEXT J50 M1 = 2: M2 = 30: X0 = 80: Y0 = 45: CLS60 INPUT l0,h0=; L0, H070 SCREEN 12REM 選擇最大,最小值110 XMIN = X(1, 1): XMAX = X(1, 1): YMIN = y(1, 1): YMAX = y(1, 1)120 FOR I = 1 TO M1:

46、FOR J = 2 TO M2130 IF XMIN X(I, J) THEN XMIN = X(I, J)140 IF XMAX X(I, J) THEN XMAX = X(I, J)150 IF YMAX y(I, J) THEN YMIN = y(I, J)170 NEXT J, IREM 坐標換算180 FOR I = 1 TO M1: FOR J = 1 TO M2190 H(I, J) = H0 * (YMAX - y(I, J) / (YMAX - YMIN) + Y0200 L(I, J) = L0 * (X(I, J) - XMIN) / (XMAX - XMIN) + X0

47、210 NEXT J, IREM 畫Y軸220 X1 = X0 - 3: X2 = X0 + 3: NN = INT(H0 / 32)230 FOR I = 0 TO NN240 Y1 = H0 / NN * I + Y0: Y2 = Y1250 LINE (X1, Y1)-(X2, Y2)260 FOR K = 1 TO L0 STEP 4: PSET (K + X0, Y1): NEXT K270 y = INT(YMAX - (YMAX - YMIN) / NN * I) * 100 + .5) / 100280 yh = INT(H0 / NN * I + .5) + Y0 - 5 L

48、OCATE 1, 70: PRINT y GET (540, 1)-(640, 16), A% PUT (6, yh), A% LOCATE 1, 70: PRINT 300 NEXT IREM 畫X軸310 Y1 = (H0 + Y0) - 5: Y2 = (H0 + Y0) + 3320 mm = INT(L0 / 50): yh = INT(H0 + Y0) / 15)330 FOR I = 0 TO mm340 X1 = L0 / mm * I + X0: X2 = X1350 LINE (X1, Y1)-(X2, Y2)360 FOR K = Y0 TO (H0 + Y0) STEP

49、 5: PSET (X1, K): NEXT K370 X = INT(XMIN + (XMAX - XMIN) / mm * I) * 100 + .5) / 100380 XL = INT(L0 / mm * I + X0 - 32) LOCATE 1, 70: PRINT X GET (540, 1)-(640, 16), A% PUT (XL, Y0 + H0 + 16), A% LOCATE 1, 70: PRINT 400 NEXT IREM 畫曲線410 FOR I = 1 TO M1: FOR J = 1 TO M2 - 1420 LINE (L(I, J), H(I, J)-

50、(L(I, J + 1), H(I, J + 1)430 NEXT J, Ic曲線繪圖程序#includestdio.h #includemath.h #includegraphics.h main() int i,j,m=30; float x31,y31,xmin,xmax,ymin,ymax,l31,h31; float xx,yy,lx,hy,lo=450,ho=250,dl=100,dh=50; char s10; int graphdriver=DETECT,graphmode=1; /*圖形初始化*/ initgraph(&graphdriver,&graphmode,); fo

51、r(i=0;i=m;i+) /*計算正弦曲線*/ xi=3.1415926*2.0/30*i; yi=sin(xi)+0.001; xmin=x0;xmax=x0;ymin=y0;ymax=y0;/選擇最大最小值/ for(i=0;ixi) xmin=xi; if(xmaxyi) ymin=yi; if(ymaxyi) ymax=yi; for(i=0;i=m;i+) /坐標換算/ li=(xi-xmin)/(xmax-xmin)*lo+dl; hi=(ymax-yi)/(ymax-ymin)*ho+dh; line(l0,h0,lm,hm); /繪制坐標軸線/ rectangle(dl,dh

52、,lo+dl,ho+dh); for(i=0;i=m-1;i+) /繪制曲線/ line(li,hi,li+1,hi+1); for(i=0;i=5;i+) /繪制x軸/ xx=(xmax-xmin)/5.0*i*100; xx=(int)xx/100.0; lx=lo/5*i+dl; line(lx,ho+dh-3,lx,ho+dh+3); sprintf(s,“%5.2f”,xx); /標注刻度值/ outtextxy(lx-16,ho+dh+16,s); for(j=0;j0) yy=(int)yy/100.0+0.01; if(yyH1(i) and Hmax=H2(i) then T

53、$=t$(i)” for(i=0;ih2i) continue; if(hmin=Hso OKHsjHso:反算r:r=(10-E/900-Hso)/(KHr)用r插值求Q11r,rQ11r=(Q11(I,j+1)-Q11(I,j) /( j+1- j)*( r- j)+ Q11(I,j)Er=(E1(I,J+1)-E1(I,j)/( j+1- j)*( r- j)+E1(I,j)Q11r設計工況單位流量;Er設計工況模型效率。4水輪機直徑計算與圓整轉輪直徑計算值:D1圓整原則: 1)取大于等于計算值的系列值; 2)取最接近與計算值的系列值;例:D(I)=0.3,0.4,.2.0,2.5,3.

54、0D1j=2.3 則D1=2.5Dij=2.05 則D1=2.0數學模型:若(D1j-D1(I)/D1(I)0.3 取D1=D1(I+1)程序設計If (D1j-D1(I)/D1(I)0.3) then D1=D1(I) Else D1=D1(i+1)5 轉速計算與圓整n的計算值n的圓整:圓整為同步轉速系列值圓整原則:同D1 :1)取大于等于計算值的系列值; 2)取最接近與計算值的系列值;例:n系列:n(i)=(50,60,. 107.1,115,125,nj=108 則 n=107.1Nj=110,則n=115程序設計: If (nj-n1(I)/n1(I)0.3) then n=n(I) Else n=n(i+1)6、工作范圍圖繪制(Hmin)(Hr)(Hma

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論