讀有限元Fortran程序筆記_第1頁
讀有限元Fortran程序筆記_第2頁
讀有限元Fortran程序筆記_第3頁
讀有限元Fortran程序筆記_第4頁
讀有限元Fortran程序筆記_第5頁
已閱讀5頁,還剩13頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、讀有限元程序筆記1. ALLOCATABLE:COORD(:,:),PROPS(:,:,:) !聲明兩個可變大小的數組,COORD(:,:)是二維數組,PROPS(:,:,:)是三維數組。2. Fortran程序行首為C代表改行為注釋,不會被編譯3. 全局變量(common),不同的程序之間,也就是在不同的函數之間或者是主程序跟函數之間,除了可以通過傳遞參數的方法來共享內存,還可以通過“全局變量”來讓不同程序中聲明出來的變量使用相同的內存位置。4. Dimensional維的,viscoplastic塑性的,elastic有彈力的,finite有限的,element元素,program程序。5

2、. THREE DIMENSIONAL ELASTIC-VISCOPLASTIC FINITE ELEMENT PROGRAM三維彈塑性有限元程序6. Module可以用來封裝程序模塊,通常是用來把程序中,具備相關功能的函數及變量封裝在一起。程序在開始定義了一個module模塊,在模塊中定義了MXKKK=50000000,MXGSJ=1000,MXGSJ=1000三個常量(PARAMETER表示常量),并且每個常量都賦了值。在module模塊中定義了NELEM,NPOIN,NPROP,MXDFN,NSTEP,IDEVP,IDDP,LTYPE以及NFIX1,NPL,NVL,NSL,NHL,NTL

3、,IDCVG,NTOTV,NKK以及DTIME,TOLER,SCALE,DSCALE這些全局變量(common表示全局變量),定義了ICM(3,8),CGAUS(2),VSHAP(8,8),DERIV(3,8,8)以及POSGP(3),COPG(3),EJ(3,3),EJACI(3,3),R(8,8)這些維數與大小都確定的全局數組變量,定義了COORD(:,:),PROPS(:,:,:)以及STRSG(:,:,:),DJ(:,:),CARTD(:,:,:,:)以及TRANJ(:,:,:,:),DJRMX(:,:,:)以及DREMX(:,:,:),DJEMX(:,:,:,:)以及CREMX(:,

4、:,:),CJEMX(:,:,:,:)以及MELEM(:,:),MPROP(:),ISSOR(:,:),NNDEX(:)以及MPFIX(:,:),MPSJ(:),MMATP(:),MPIV(:)以及TSTIF(:)以及ADISP(:),TDISP(:),ALOAD(:)以及PSNBR(:,:,:),PSNBJ(:,:)以及PSTNR(:,:,:),PSTNJ(:,:)以及STRSP(:,:),STRSJ(:,:)這些維數確定但是大小不確定的可變大小的數組,ALLOCATABLE表示可變大小的數組變量。Module的程序代碼要編寫在最前面,整個程序在主程序以及子程序中都使用了MODULE DIM

5、DATA。模塊module的名字是DIMDATA,表示模塊里面定義的變量都是內容不確定或者大小不確定的,需要后面補充。7. RESIZE調整大小的意思,采用子程序SUBROUTINE RESIZE(KELEM,KPOIN,KPROP,KFIX1),子程序名稱RESIZE(KELEM,KPOIN,KPROP,KFIX1)括號里面的KELEM,KPOIN,KPROP,KFIX1是指定四個變量用來接收傳遞進來的參數,名字可以完全自定,不需要跟呼叫時所放入的變量 名稱有任何聯系。子程序的目的是把module模塊里面的可變大小的數組變量的維數與大小都確定下來,相應的數組變量的內存大小也就確定下來了。在子

6、程序SUBROUTINE RESIZE(KELEM,KPOIN,KPROP,KFIX1)里面要用到module模塊里面的變量,要在子程序開始聲明之前就使用USE DIMDATA的描述來使用這個module。8. 在聲明時,只能使用常數來賦數組的大小,常數包括填入數字或者使用聲明為parameter的常數。9.這段程序作用是給各個數組內容賦予初值。這段程序代碼的作用是配置數組的內存空間大小。ALLOCATE(A(STUDENTS) ! 配置內存空間 10主程序并不一定要放在整個程序代碼的最開頭,它可以安排在程序中的任意位置,可以先寫子程序再寫主程序。PROGRAM FEM3 v04是主程序開頭,

7、主程序沒有放在最開頭,放在中間了。但是module的程序代碼需要編寫在整個程序的最前面。11.Module模塊截圖。12.這些語句用于賦予數組的初值。13. ALLOCATE MEMORY OK!配置內存完畢14. CARRIAGECONTROL='FORTRAN'的字段用來指定所要開啟的文件名稱,“6”的作用是給后面的文件指定一個代碼。主程序PROGRAM FEM3 v04里面調用了很多個主程序,每一個主程序都有一個特定的功能。主程序PROGRAM FEM3 v04里面調用了COPYRIGHT、READDATA、GAUSINDEX、INISTRESS、GAUSTRAN、FOR

8、MLOAD、ELASMATX、STFINDEX、FORMSTIF、ITERATION、OUTRESULT、WRITE2TECPLOT,每調用一個子程序后在調用一個子程序SHOWTIME。子程序SHOWTIME在前述每個子程序被調用后調用,與它們混合調用。此語局意思是“停止計算完成的”15. iteration迭代,copyright版權,readdata讀取數據,index索引,gausindex高斯索引,INISTRESS初始應力,dimension維度,16. 這是第一個子程序COPYRIGHT,這個字段定義了一個一維數組CH(),數組大小為10,數組CH()是CHARACTER類型數組,

9、 意思就是數組CH()里面的每一個變量是CHARACTER(字符串)類型變量。表示數組CH()內每一個變量都是CHARACTER(字符串)類型變量,數組內每一個變量大小都是71。后面給出了數組里面每一個變量的值。WRITE(*,*) (CH(I),I=1,7)語句表示在默認位置(也就是電腦屏幕)上不用特定格式輸出數組的內容,還用了一個簡單循環(CH(I),I=1,7)。17.這是主程序里面調用的第二個子程序SUBROUTINE READDATA,定義了一個字符串類型變量TITLE,大小為80,意思就是變量TITLE里面可以保存80個字符位置的數據。打開代號為10的文件CORE04.DAT與打開

10、代號為20的文件CHECK.OUT,使用read來讀取代號為10的文件CORE04.DAT中的文本到字符串變量TITLE中。使用read來讀取代號為10的文件CORE04.DAT中的文本到DTIME,NSTEP, TOLER,IDDP, SCALE,DSCALE這些變量中去。因為前面module模塊里面定義了DTIME,NSTEP, TOLER,IDDP, SCALE,DSCALE這些變量,在子程序SUBROUTINE READDATA里面使用USE DIMDATA語句就可以在子程序里面直接使用前面module模塊里面定義的變量,不需要再子程序里面重復定義。此語句以C作為開頭,表明此句是注釋。

11、使用read來讀取代號為10的文件CORE04.DAT中的文本到NELEM,NPOIN,NPROP,NFIX1這些變量中。在子程序SUBROUTINE READDATA里面又調用了READELEM、READNODE、READMATER、READBOND這四個子程序,嵌套調用子程序。READELEM讀單元,READNODE讀結點,READBOND讀結合處。18.這是子程序 SUBROUTINE READELEM的內容。關閉代號是“1005”的文件。這是子程序SUBROUTINE READNODE的內容。以上兩個圖片合并就是一個子程序SUBROUTINE READMATER的截圖。子程序獨立地擁有

12、屬于自己的變量聲明,也就是說在子程序與其它子程序之間,子程序與子程序之間所聲明變量彼此是不相干的,即使在主程序與其它的子程序中使用了同樣的變量名稱,它們也是彼此沒有關系的不同變量。主程序跟子程序是兩種不同的程序,不同程序之間可以各自擁有屬于自己的變量聲明以及自己的行代碼定義。material材料,constant常數,input輸入,READMATER讀取材料參數,rock巖石,PROPS后盾,1-E表示彈性,2-POISSON RATIO表示泊松比,4-FRICTION ANGLE表示摩擦角,5-UNIT WEIGHT表示材料容重,6-DILATAION表示材料的膨脹系數,7-GAMA表示材

13、料的通用性質,TRANSFERRED傳遞,JOINT節點,DIP傾斜角,INTERVAL間隔,TENSILE STRENGTH抗拉強度。此部分用于定義材料的性能參數與定義節點的性能參數。此語句把“MATERIAL CONSTANT=”字符串寫入代碼是20的文件中。代碼是20的文件名稱是CHECK.OUT,代碼為10的文件名稱是CORE04.DAT,代碼為1005的文件名稱是CHNAME。一行程序代碼的最后如果是符號&,代表下一行程序會和這一行連接;如果一行程序代碼的開頭是符號&,代表它會和上一行程序連接。此句是邏輯判斷語句,.GT.判斷是否“大于”(Greater Than)。

14、輸出變量的值到代碼為20的文件中去,輸出格式代碼是12.代碼12的內容為 ,設置輸出格式,對應書本第50面。CRITERION標準,準則,尺度。INNER CONE內切圓,INNER OUTER CONE內接圓(內角點外接)。注釋語句。OUTER OUTER CONE外接圓(外角點外接)。不理解這個字段的意思,Fortran語法沒有看懂。這個沒有怎么看懂它是什么意思,不太理解,對于語法與內容本身都不甚理解。子程序SUBROUTINE READBOND的字段,表示這個子程序是關于約束信息,邊界條件信息都寫在子程序里面了。CONSTRAINTS n. 數 約束;限制;約束條件(constraint

15、的復數形式), DOF(Degree of Freedom)自由度,DOF CONSTRAINTS自由度限制。BOUNDARY CONDITION FINISHED邊界條件完成,boundary邊界,condition條件。19. GAUSINDEX高斯索引INDEX MATRIX OF GAUSS STRESSES FOR JOINT, BOLT強調對于接合處,螺栓的高斯索引矩陣20INISTRESS初始應力;INITIAL STRESS初始應力,預應力;VISCOPLASTIC STRAIN粘塑性應變,判斷是否“小于”(Little Than)。GOTO跳轉命令,跳轉到行代碼指定的那一行去

16、執行。這個子程序的內容就是關于初始應力的。代碼是46的文件就是STRSS.IN。20. SHAPE FUNCTION & DERIVATIVES TO LOCAL COORDINATES形函數與導數的局部坐標。GAUSTRAN高斯轉換。DERIVATIVES導數,LOCAL COORDINATES OF NODES ICM 在節點局部坐標系,DERIVATIVES OF SHAPE FUNCTION TO GLOBAL COORDINATES形函數在全局坐標中的導數。GAUSS TRANSFORMATION MATRIX FINISHED高斯變換矩陣完成CALCULATE THE VA

17、LUE OF SHAPE FUNCTIONS AT GAUSS-P在gauss-p計算形函數的值LOCAL (DERIV) OF SHAPE FUNCTIONS ON GAUSS POINT在高斯點上形狀函數的局部(衍生物)JACOBIAN OF GAUSS POINT DJ 高斯點的雅可比矩陣CAUTION提醒 INVERSE逆向的 INVERSE JACOBIAN OF GAUSS POINT G高斯點G的雅可比逆矩陣21.在SUBROUTINE FORMLOAD子程序里面調用SUBROUTINE OUT_LOAD子程序。后面某一個位置會調用這個子程序。LOAD MATRIX荷載矩陣,NO

18、DE節點 ,FORCE力, POINTLOAD 集中載荷, LOAD VECTOR FINISHED荷載向量完成INDEX MATRIX OF EQULIBRIUM EQUATION平衡方程系數矩陣EQUILIBRIUM INDEX FINISHED平衡系數完成CONCENTRATED LOAD集中載荷 POINT LOAD FINISHED點荷載完成VOLUME LOADS體積力 VOLMLOAD體積力SURFACE LOAD FINISHED面荷載完成 SEEPAGE LOAD滲透力WEIGHT OF WATER水的重量 THERMAL LOADS溫度力ELASTIC MATRIX OF

19、ELEMENT彈性矩陣的元素Fortran77使用do會比較麻煩一點,它不使用end do來結束循環,而是使用行號來結束循環,程序代碼要在do的后面寫清楚這個循環到哪一行程序代碼結束。Fortran77中,經常使用CONTINUE這個命令來結束循環,因為CONTINUE這個命令沒有實際的用途,剛好可以拿來封裝使用。Fortran77很多時候也可以用end do,而不是使用行號來封裝循環。TRANSFORMATION MATRIX OF JOINT節點的變換矩陣FORM ELASTIC MATRIX OF ROCK AND JOINT巖石和接合處形成彈性矩陣FORM EQUIVALENT ELASTIC MARIX OF JOINTED ROCK形成節理巖石的等效彈性矩陣FORM ELASTIC MATRIX OF JOINTED ROCK形成節理巖石的彈性矩陣INITIALIZE THE INDEX ARRAY OF STIFFNESS MATRIX初始化索引數組的剛度矩陣DEALLOCATE解除分配 ITERATION迭代ELASTIC STIFFNESS MATRIX彈性剛度矩陣RHEOLOGICAL CALCULATION流變計算CALCULATE THE STRESS INCREMENT OF BOLTED JOINTED ROCK MASS計算螺栓連接巖體的

溫馨提示

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

最新文檔

評論

0/150

提交評論