LUSAS可编程接口

使用LUSAS可编程接口(LPI)可以实现建模与结果后处理的自定义化与自动化,同时也可以创建用户自定义的菜单项、对话框、工具栏等,以使用用户自定义的资源。LPI也可以用来在LUSAS软件与其他软件之间传递数据、编程控制LUSAS建模器、或链接其他程序动态实时的控制LUSAS建模器。

 

使用LUSAS的LPI,所有的用户都可以将整个结构的建模过程实现完全自动化,可是从LUSAS软件本身,也可以从其他第三方程序。还可以实现规范校验、优化构件、输出图片、输出表格与自定义报告等。由于用户所有的操作在LUSAS用都被记录为会话文件(session file),所有在LUSAS程序界面中具有的功能,都可以使用LPI来控制。这就意味着你可以查看和编辑一段会话文件的记录、确定其中哪些值可以为变量,将它们转换为一个函数体,可以添加循环或者调用其他函数,或者完全构建一个全新的程序-用到了LUSAS经过验证的核心功能。

支持的编程语言

使用任何与ActiveX兼容的语言,如 VB.Net, C#, VBScript, C++, Python,Perl, JScript 等都可以访问和使用LUSAS软件的所有模块和功能,可以用来:

  l 创建用户自定义的菜单项、对话框、和工具栏等

  l 访问LUSAS模型内部存储的信息

  l 定制建模操作

  l 创建参数化的模型

  l 自动执行重复的任务

  l 导入CAD几何模型与属性

  l 直接链接Microsoft Word /

  l Excel, 以及其他程序进行输入的输入与输出

  l 进行规范校验, 如使用迭代分析时,优化构件的尺寸和配置,板的配筋的工程量统计等

  l 自定义和自动化建模器的操作

  l 在LUSAS和其他软件之间传递数据

  l 从建模器内部出发控制LUSAS建模器本身,或从其他软件出发操控LUSAS建模器

使用LPL来:

LUSAS脚本文件

右图所示的表格项中的脚本文件存储了一系列的LUSAS命令用于以后命令回放。其中包含以下的例子:根据不同的分析类型指定相应的属性树形目录的创建启动模板;设置默认的网格和材料类型、设置的云图模型;定义模型的方向和保存指定的模型视图以生成报告等。

 

当LUSAS运行时, 会话文件将以Visual Basic Script格式(.VBS)记录在模型生成过程中的每一个步骤-VBS是一种非常容易理解的脚本语言。编辑会话文件可以很容易定义一个参数化的类似的模型。当在LUSAS中重新运行该脚本时,一个用户自定义的参数化描述的模型可以非常容易的创建。LUSAS的宏记录器功能同样提供了这种记录子程序的功能,可以保存并回放重用。另外用户使用的脚本可以定义控件以包含参数定义信息, 如对话框、单选框、下拉框等。

脚本文件的其他各种用途还包含:读取几何相关信息如:结构柱的尺寸、截面属性、桥梁跨度、建筑层高等。可使用表格定义,并自动快速的生成多跨桥梁或房屋结构模型;快速生成参数化风机基座结构模型;或自动生成大量的荷载组合信息和包络;对实体模型进行切片,并得到多工况组合的结果数据且可以自动绘制图表和生成定制报告。

 

LUSAS提供了一系列的脚本实例帮助用户理解LUSAS脚本模型的基本概念、如何获取LUSAS的几何/属性数据,如何从Microsoft Word、 Excel 或其他软件向LUSAS导入/导出数据等。

 

Visual Basic Script, 如同Jscript, Python 和Perl等都被称为解析语言-意味着程序执行前不需要进行编译。

组件技术

LPI使得LUSAS可以通过COM技术与其他Windows平台下兼容的程序进行通讯。LPI定义了一系列的接口通过这些接口,LUSAS可以和其他软件进行通讯和互操作就好像其他软件是LUSAS软件的一部分一样无缝交互。LUSAS软件也可以在其他软件系统中当作一个组件(显示运行或隐藏运行)来使用,可以使用LUSAS固有的任何功能:建模能力、分析求解、结果查看和处理等。

 

例子还包括控制外部程序向LUSAS输入数据,以数据共享方式输入CAD几何数据和属性、输出数据进行后处理,如输出结果数据到Excel表格单元格进行附加计算。一个典型的使用场景就是使用组件技术将LUSAS作为BIM设计系统平台(如Revit,Bentley等)的一部分,用于计算结果的规范校验。

 

另一种高级的定制功能是使用VB.NET语言(与C#和C++语言)需要 在程序运行前进行编译。使用.NET语言相比较与脚本语言如VB Script,其优势在于可以使用大量的标准库,插件库,控件库和系统函数-避免重新编写相同功能的模块。

LUSAS被用来作为其他第三方程序的结果数据提供源

组件技术

LUSAS提供了Visual Studio中.NET的项目模板(作为插件) 使用户可以轻松与LUSAS主程序进行交互。包括与OFFICE的Word与Excel等交互自动生成结构设计报告,与BIM平台软件交互进行几何数据、结构计算结果数据、有限元相关数据或用户自定义数据的双向传递。除此外,也可以使用其他第三方软件通过此种方式进行交互。

 

总而言之,LUSAS提供了非常丰富的开发接口、共有几百个接口(interface)类型与类(class)类型,每种类型有相应的函数可供调用,如此开发者用户可以通过编程方式全方位的控制LUSAS的建模器,而不仅仅局限于一些几何属性。例如,完全可以使用这些接口来获取模型和单元结果数据,进行基于设计规范相关的校验验算,将验算结果自动输出到表格或者使用LUSAS自带的自定义云图功能展示校验结果。

除了使用LPI以外,还可以使用Fortran通过LUSAS MMI-(Material Model Interface) 来自定义材料本构模型,编译后通过LUSAS求解器进行求解调用。

LUSAS材料自定义接口

LPL是面向对象的

LUSAS LPL 和MMI关系图

案例学习1:钢穹顶模型的建模与优化

FEA韩国分公司使用VB Script为三星重工开发了钢结构穹顶的建模与优化程序,穹顶的类型支持平面桁架屋顶、拱形屋顶,还有圆形、扁圆形、椭圆形穹顶。用户根据选择的穹顶类型输入跨度和尺寸信息。对于指定了初始应力比的各个构件,使用LUSAS进行初步分析以确定初始的截面属性。定义优化目标参数。对于用户定义的值,根据规范自动生成和指定荷载信息到相应的结构部位。应力校验和位置的校验用于确认构件的尺寸是否需要更改,尽量使用保存的已有的截面尺寸。对所有构件进行迭代循环,检查构件是否可以减少尺寸,并满足规范要求以达到优化目的。

 

对于正常使用校验,模块可以将模型转换为带有合适单元的屈曲特征值分析模型并考虑分布荷载、集中荷载、用户自定义荷载, 或者将模型转换为材料非线性、几何非线性、材料/几何非线性的模型。模块也可以根据规范校验结果、扰度、联接和其他结果统计等生产相应的图表、表格和报告等。

 

案例学习2

在与台湾高速铁路项目C270签订的合同中,使用VB脚本辅助高架桥结构抗震模型的建立和分析。这个项目中有一条38公里长的高架桥,需要建立70个单独的模型。

  l Visual Basic脚本从Excel数据库中读取几何数据,如柱的尺寸、跨度等,并在LUSAS中自动建立三维梁模型,用于全               球地震分析和轨道-结构相互作用评估

  l 与手工方法相比,模型的创建速度更快,也更可靠准确

  l 基于LUSAS确定立柱轴力的后续响应谱分析轨道-结构相互作用,分析得到了地震荷载作用下轨道内部的相对运动和应            力;非线性土-结构分析确定了桩和桩帽的应力-所有这些实现了在一个要求严格的项目时间的经济设计

 

用户自定义结果

内置的用户定义结果计算工具允许在算术表达式中使用LUSAS模型和结果参数,从而在所有LUSAS软件产品中提供电子表格样式的功能。它提供了一种外部结果操纵的替代方案。然而,与外部电子表格计算不同的是,因为所有的计算都是在LUSAS内部完成的,并且基于当前的模型和结果数据,如果模型数据被编辑或者结果发生变化,所获得的值可以在按下按钮时自动重新计算。

定义之后,创建的用户结果组件可以从云图、值和图层属性对话框上的组件下拉列表中根据名称选择。所有标准的LUSAS结果处理、查看、动画、绘图、打印和报告功能都可以与任何用户定义的结果组件一起使用。