“WSAP重力二阶效应”
转自:结构乌托邦-公众号于2018年开辟OpenSEES专题(【会议总结】OpenSEES Days Eurasia 2019 in PolyU、【PBSD】【OpenSees】在2019日本E-Defense盲测比赛的表现)、2019年开辟PBSD专题(【PBSD】一键弹塑性报告功能演示、【PBSD】V1.0.5.0版正式发布:免费地震动工具箱之教学视频)。
今天是与WSAP见面的第一天,以悬臂柱及框架结构为例,将WSAP求解结果与SAP2000求解结果进行对比,简述WSAP的重力二阶效应处理方法。点击“阅读原文”可直接查看WSAP开源项目。
算例关键接口示例
-
//模型初始化
-
//量纲:N、mm、t
-
var model =new WModelNet();
-
-
/// <summary>
-
/// WModelNet:添加节点
-
/// </summary>
-
/// <param name="tag"> 节点编号 </param>
-
/// <param name="x"> 节点X坐标 </param>
-
/// <param name="y"> 节点Y坐标 </param>
-
/// <param name="z"> 节点Z坐标 </param>
-
/// <param name="isFix"> 节点是否约束 </param>
-
/// <returns> 节点对象 </returns>
-
WNodeNet node = model.AddNode(int tag, double x, double y, double z, bool isFix);
-
-
/// <summary>
-
/// WModelNet:添加节点荷载
-
/// </summary>
-
/// <param name="nodeTag"> 节点编号 </param>
-
/// <param name="dof"> 荷载自由度方向 </param>
-
/// <param name="load"> 荷载(mm、N) </param>
-
/// <returns> 是否添加成功 </returns>
-
bool isSuccess = model.AddNodeLoad(int nodeTag, int dof, double load);
-
-
/// <summary>
-
/// WModelNet:添加坐标为Z的所有节点
-
/// </summary>
-
/// <param name="z"> Z坐标 </param>
-
/// <returns> void </returns>
-
model.FixZ(double z);
-
-
/// <summary>
-
/// WModelNet:添加矩形柱单元,默认考虑P-Delta
-
/// 截面局部向量默认高度方向指向全局Y向
-
/// 默认不考虑刚域
-
/// </summary>
-
/// <param name="iNodeTag"> I端节点编号 </param>
-
/// <param name="jNodeTag"> J端节点编号 </param>
-
/// <param name="width"> 截面宽度 </param>
-
/// <param name="height"> 截面高度 </param>
-
/// <returns> 单元对象 </returns>
-
WElementNet column = model.AddRectConcreteColumn(int iNodeTag, int jNodeTag, double width, double height);
-
-
/// <summary>
-
/// WModelNet:添加矩形梁单元,默认不考虑P-Delta
-
/// 截面局部向量默认高度方向指向全局Z向
-
/// 默认不考虑刚域
-
/// </summary>
-
/// <param name="iNodeTag"> I端节点编号 </param>
-
/// <param name="jNodeTag"> J端节点编号 </param>
-
/// <param name="width"> 截面宽度 </param>
-
/// <param name="height"> 截面高度 </param>
-
/// <returns> 单元对象 </returns>
-
WElementNet beam = model.AddRectConcreteBeam(int iNodeTag, int jNodeTag, double width, double height);
-
-
/// <summary>
-
/// WElementNet:修改单元是否考虑P-Delta
-
/// </summary>
-
/// <param name="isPDelta"> 是否考虑P-Delta </param>
-
/// <returns> 是否修改成功 </returns>
-
bool isSuccess = column.SetPDelta(bool isPDelta);
-
-
/// <summary>
-
/// WModelNet:创建有限元模型
-
/// </summary>
-
/// <param name="clearLoadCases"> 是否清空荷载 </param>
-
/// <returns> 是否创建成功 </returns>
-
bool isSuccess = model.CreateFEModel(bool clearLoadCases);
-
-
/// <summary>
-
/// WModelNet:基于荷载的线性求解器
-
/// </summary>
-
/// <returns> 是否求解成功 </returns>
-
bool isSuccess = model.DoLinearStaticAnalyze();
-
-
/// <summary>
-
/// WModelNet:基于荷载的非线性求解器
-
/// </summary>
-
/// <param name="stepNumber"> 分析步数 </param>
-
/// <returns> 是否求解成功 </returns>
-
bool isSuccess = model.DoGeneralStaticAnalyze(int stepNumber);
悬臂柱测试
图2 WSAP可通过单元剖分考虑小P-Delta效应
图4 WSAP加载动图
精彩回顾:
【会议总结】OpenSEES Days Eurasia 2019 in PolyU
【PBSD】【OpenSees】在2019日本E-Defense盲测比赛的表现
-
PBSD
【PBSD】2019年更新历史——结构抗震性能设计软件PBSD
【PBSD】超限工程好助手:结构抗震性能设计软件PBSD功能简介
【PBSD】【OpenSEES】【YTO】智能化的结构弹塑性分析全套解决方案
【PBSD】V1.0.5.0版正式发布:免费地震动工具箱之教学视频
【PBSD】【PERFORM-3D】性能前馈集中塑性铰单元的定义、优势与测试
【PBSD】性能前馈集中塑性单元PFLPH与纤维单元力学性能对比
-
OpenSees
【OpenSEES】OpenSEES历史版本下载:v1.7.2-v3.1.0
【OpenSees】应力元纤维单元的Localization Issues
【OpenSEES】浅析纤维单元(一):单元剖分数对刚度法纤维单元力学性能的影响
【OpenSEES】浅析纤维单元(二):积分点数对刚度法纤维单元力学性能的影响
【OpenSEES】浅析迭代(二):基于LineSearch优化迭代算法
【OpenSEES】浅析迭代(三):基于Krylov优化迭代算法
【OpenSees】SecAggregator为DispBC赋予剪切刚度乃无用功
-
编程
-
工具
【工具】OSRun [OpenSees运行辅助工具][开源]
【工具】FSV [OpenSees纤维截面可视化工具][开源]