平面8节点等参元完整程序

平面8节点等参元完整程序

ID:38493553

大小:47.00 KB

页数:12页

时间:2019-06-13

平面8节点等参元完整程序_第1页
平面8节点等参元完整程序_第2页
平面8节点等参元完整程序_第3页
平面8节点等参元完整程序_第4页
平面8节点等参元完整程序_第5页
资源描述:

《平面8节点等参元完整程序》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、平面8节点等参元完整程序moduleElem_Rect8!八节点等参元implicitnoneinteger(kind(1)),parameter::ikind=(kind(1))integer(kind(1)),parameter::rkind=(kind(0.d0))type::typ_Kcolreal(rkind),pointer::Row(:)endtypetyp_Kcoltype::typ_GValue!总体控制变量integer(ikind)::NNode,NElem,NLoad,NMat,NSupportinteger(ikind)::NGlbDOF!整体自

2、由度总数integer(ikind)::NGENS,NodeDOF,ElemNodeNointeger(ikind)::NIntendtypetyp_GValuetypeTyp_Node!定义节点类型real(rkind)::coord(2)!节点坐标integer(ikind)::GDOF(2)!整体自由度编码real(rkind)::DISP(2)!节点位移real(rkind)::dDISP(2)!节点位移增量real(rkind)::dForce(2)!节点不平衡力endtypetyp_Node!==================================

3、===========================================Typetyp_IntPoint!定义积分点参数real(rkind)::EPS(3)!应变real(rkind)::SIG(3)!应力real(rkind)::D(3,3)!本构矩阵real(rkind)::B(3,16)!几何矩阵real(rkind)::DETJ!雅克比行列式endtypeTyp_IntPointtypeTyp_Rect8!定义实体单元integer(ikind)::NodeNo(8)!节点编号real(rkind)::E!弹性模量real(rkind)::u!泊松

4、比real(rkind)::t!单元厚度real(rkind)::EK(16,16)!单元刚度矩阵type(typ_intpoint)::IntP(9)!积分点!........................endtypeTyp_Rect8typeTyp_Load!定义荷载类型integer(ikind)::NodeNo!荷载作用节点编号real(rkind)::Value(2)!荷载大小endtypeTyp_LoadtypeTyp_Support!定义支座类型integer(ikind)::NodeNo!支座节点编号integer(ikind)::DOF!支座约束自由

5、度real(rkind)::Value!支座位移大小endtypeTyp_SupportcontainssubroutineGet_Elem_K(GValue,Elem,Node)!核心程序,得到单元的刚度矩阵implicitnonetype(typ_GValue)::GValuetype(typ_Node)::Node(:)type(typ_Rect8)::Elem(:)real*8::InvJ(2,2)!雅克比矩阵及其逆矩阵real*8::Coord(8,2),IntPCoord(9,2),IntPwt(9)real*8::dN(2,8)!节点坐标,积分点坐标,权函数

6、,形函数导数integer::I,ElemNocallGet_IntP_Prop(IntPCoord,IntPWt)!计算积分点信息doElemNo=1,size(Elem)Elem(ElemNo)%EK=0.0doI=1,GValue%ElemNodeNo;!得到节点坐标coord(I,:)=Node(Elem(ElemNo)%NodeNo(i))%coord;enddoElem(ElemNo)%EK=0d0DOI=1,size(Elem(ElemNo)%IntP)!计算本构矩阵callGet_D(Elem(ElemNo)%IntP(I)%D,Elem(ElemNo)%

7、E,Elem(ElemNo)%u)!计算形函数对局部坐标导数callGet_dN_dxi(dN,IntPCoord(i,1),IntPCoord(i,2))InvJ=matmul(dN,Coord)!得到雅克比行列式Elem(ElemNo)%IntP(I)%DETJ=InvJ(1,1)*InvJ(2,2)-InvJ(1,2)*InvJ(2,1)InvJ=matinv(InvJ);!对雅克比行列式求逆dN=matmul(InvJ,dN)!得到形函数对整体坐标的导数callGet_B(Elem(ElemNo)%IntP(I)%B,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。