-
大小: 10KB文件類型: .m金幣: 1下載: 0 次發(fā)布日期: 2021-06-03
- 語言: Matlab
- 標(biāo)簽: matlab??結(jié)構(gòu)力學(xué)??
資源簡介
用于計(jì)算平面框架內(nèi)力
matlab 代碼
可加載均布荷載,集中荷載
代碼片段和文件信息
function?exam3_1
%?本程序?yàn)榈谌碌牡谝粋€(gè)算例,采用平面梁單元計(jì)算平面剛架的變形和內(nèi)力
%??????輸入?yún)?shù):?無
%??????輸出結(jié)果:?節(jié)點(diǎn)位移和單元節(jié)點(diǎn)力?
????PlaneframeModel?;??????%?定義有限元模型
????SolveModel?;???????????%?求解有限元模型
????DisplayResults?;???????%?顯示計(jì)算結(jié)果
return?;
function?PlaneframeModel
%??定義平面桿系的有限元模型
%??輸入?yún)?shù):
%??????無
%??返回值:
%??????無
%??說明:
%??????該函數(shù)定義平面桿系的有限元模型數(shù)據(jù):
%????????gNode?-------?節(jié)點(diǎn)定義
%????????gElement?----?單元定義
%????????gMaterial?---?材料定義,包括彈性模量,梁的截面積和梁的抗彎慣性矩
%????????gBC1?--------?約束條件
%????????gNF?---------?集中力
%????????gDF?---------?分布力
????global?gNode?gElement?gMaterial?gBC1?gNF?gDF
????%?節(jié)點(diǎn)坐標(biāo)
????%?????????x??????y
????gNode?=?[0.0???0.0??????????%?節(jié)點(diǎn)?1
?????????????0.0???4.0??????????%?節(jié)點(diǎn)?2
?????????????3.0???0.0??????????%?節(jié)點(diǎn)?3
?????????????3.0???4.0??????????%?節(jié)點(diǎn)?4
?????????????4.5???4.0??????????%?節(jié)點(diǎn)?5
?????????????6.0???0.0??????????%?節(jié)點(diǎn)?6
?????????????6.0???4.0?]?;??????%?節(jié)點(diǎn)?7
?????
????%?單元定義
????%??????????節(jié)點(diǎn)1??節(jié)點(diǎn)2??材料號
????gElement?=?[1??????2??????1???????%?單元?1
????????????????2??????4??????1???????%?單元?2
????????????????3??????4??????1???????%?單元?3
????????????????4??????5??????1???????%?單元?4
????????????????5??????7??????1???????%?單元?5
????????????????6??????7??????1]?;????%?單元?6
????????
????%?材料性質(zhì)?
????%???????????彈性模量??抗彎慣性矩??截面積
????gMaterial?=?[2.1e11???2.0e-4????1.0e-2]?;???%??材料?1
????%?第一類約束條件
????%?????節(jié)點(diǎn)號???自由度號????約束值
????gBC1?=?[?1????????1????????0.0
?????????????1????????2????????0.0
?????????????1????????3????????0.0
?????????????3????????1????????0.0
?????????????3????????2????????0.0
?????????????3????????3????????0.0
?????????????6????????1????????0.0
?????????????6????????2????????0.0
?????????????6????????3????????0.0]?;
????%?集中力
????%?????節(jié)點(diǎn)號???自由度號???集中力值
????gNF?=?[??5???????2?????????-80e3]?;
????%?分布載荷(線性分布)
????%?????單元號???節(jié)點(diǎn)1載荷值???節(jié)點(diǎn)2載荷值???自由度號
????gDF?=?[??1?????????-30e3?????????0??????????????2
?????????????2?????????-15e3???????-15e3????????????2??]?;
return
function?SolveModel
%??求解有限元模型
%??輸入?yún)?shù):
%?????無
%??返回值:
%?????無
%??說明:
%??????該函數(shù)求解有限元模型,過程如下
%????????1.?計(jì)算單元?jiǎng)偠染仃嚕烧w剛度矩陣
%????????2.?計(jì)算單元的等效節(jié)點(diǎn)力,集成整體節(jié)點(diǎn)力向量
%????????3.?處理約束條件,修改整體剛度矩陣和節(jié)點(diǎn)力向量
%????????4.?求解方程組,得到整體節(jié)點(diǎn)位移向量
????global?gNode?gElement?gMaterial?gBC1?gNF?gDF?gK?gDelta
????%?step1.?定義整體剛度矩陣和節(jié)點(diǎn)力向量
????[node_numberdummy]?=?size(?gNode?)?;
????gK?=?zeros(?node_number?*?3?node_number?*?3?)?;
????f?=?zeros(?node_number?*?3?1?)?;
????%?step2.?計(jì)算單元?jiǎng)偠染仃?,并集成到整體剛度矩陣中
????[element_numberdummy]?=?size(?gElement?)?;
????for?ie=1:1:element_number
????????k?=?StiffnessMatrix(?ie?1?)?;
????????AssembleStiffnessMatrix(?ie?k?)?;
????end
????%?step3.?把集中力直接集成到整體節(jié)點(diǎn)力向量中
????[nf_number?dummy]?=?size(?gNF?)?;
????for?inf=1:1:nf_number
????????n?=?gNF(?inf?1?)?;
????????d?=?gNF(?inf?2?)?;
????????f(?(n-1)*3?+?d?)?=?gNF(?inf?3?)?;
????end
????%?step4.?計(jì)算分布力的等效節(jié)點(diǎn)力,不集成到整體節(jié)點(diǎn)力向量中
????[df_number?dummy]?=?size(?gDF?)?;
????for?idf
評論
共有 條評論