2022年04月12日第1版
版权:天津大学
开发:中国科学院力学研究所
OceanKit 手册目录1. 关于OceanKit1.1 OceanKit介绍1.2 功能特点界面开发前处理求解器后处理1.3 开发声明2. 下载安装2.1 下载2.2 更新日志版本1.3.0版本1.2.0版本1.1.02.3 安装和运行3. 理论概念3.1 基本概念4. 计算流程4.1 软管动力学分析项目4.1.1 结构参数化建模4.1.2 模型网格生成4.1.3 材料属性设置4.1.4 约束和边界载荷4.1.5 设置求解参数4.1.6 执行计算任务5. 后处理流程5.1 结果的导入5.2 结果数据组成模型数据 5.3 数据三维显示5.3.1 显示应力云图开启云图显示显示渐变标尺开启光照效果5.3.2 结点选择和拾取显示部分结点拾取结点信息测量两结点距离5.3.3 单元边显示调整5.3.4 动画播放和截图显示区截图多时间步动画播放动画截图功能5.4 数据的绘图5.4.1 自定义结点绘图5.4.2 结点拾取绘图6. 界面操作6.1 主界面介绍6.1.1 OceanKit主界面6.1.2 菜单栏文件编辑显示工具帮助6.1.3 工具栏6.1.4 显示区6.1.5 动画控制栏6.2 工作区属性6.2.1 工作区属性6.2.2 项目属性6.2.3 结果属性6.2.4 工具属性6.2.5 设置属性图形显示属性文件路径属性6.3 管道项目属性6.3.1 模型尺寸参数属性页显示属性页6.3.2 网格划分参数属性页显示属性页导出属性页结点集6.3.3 材料属性6.3.4 载荷定义约束载荷压力载荷位移载荷力载荷6.3.5 求解控制6.3.6 计算任务VFOSP任务6.4 结果模型属性6.4.1 模型数据6.4.2 模型展示通用属性页点属性页边属性页面属性页拾取属性页6.4.3 数据绘图绘图数据属性页绘图显示属性页
OceanKit是一个用于海洋平台相关结构力学性能计算和可视化的专业软件。包含前端界面,用于软管结构建模、网格生成、材料定义、载荷定义、计算任务管理、结果显示等功能;同时也包括几个不同计算功能的求解器。
OceanKit是由天津大学资助支持,联合中国科学院力学研究所非线性国家重点实验室(LNM)进行开发。天津大学、LNM和OceanKit的开发者不保证OceanKit程序包或其衍生程序是没有错误的,同时也不对OceanKit中错误引起的损失负责。
目前,OceanKit的开发和维护者为:
OceanKit最新版本(v1.3.0):请联系开发者。
在Windows系统下使用OceanKit需要满足以下前提条件
满足以上要求后,即可正常运行OceanKit,OceanKit在Windows下为绿色软件,使用方式如下:
如果需要,请天大老师补充相关理论说明。
OceanKit针对海洋平台结构进行力学分析的基本流程包括:
下面分别对以上流程1-7进行详细说明,流程8-9则在第5节中进行说明 ,这里主要描述相关概念和参数,具体的软件界面操作请参考6. 界面操作一节。
在开始每一种结构计算前,需要建立一个相应的项目,这个项目包含了分析所定义的数据。 对于深海管道模拟项目,它主要包括以下数据分类:
这些分类的具体数据将在下面的流程介绍中进行说明。项目可以以文件的形式进行保存,便于之后打开或修改。
建立一个管道模型,需要设置其几何参数并选择对称类型。其中几何参数包括管道的全长、管道的直径、管道壁厚、止屈器长度、止屈器壁厚以及止屈器的位置。从管道的正视图和左视图,可以明确各参数的物理意义。
管道的正视图如下:
管道的左视图如下:
各符号参数对应的含义如下表
参数含义 | 止屈器位置 | 止屈器长度 | 管道总长 | 管道内径 | 管道壁厚 | 止屈器壁厚 |
---|---|---|---|---|---|---|
参数符号 | L1 | L2 | L3 | d | t1 | t2 |
在OceanKit中有四种生成网格的方式:映射-给定点数、映射-给定尺寸、自适应、从文件导入,用户可以自行选择划分网格的方式,并设置轴向、环向、径向以及止屈器径向网格数目。
在本软件中材料的本构模型采用考虑强化和下降段的三折线模型,需要设置的材料属性包括弹性模量、剪切模量、切线模量、屈服强度、拉伸极限和密度,其中弹性模量、剪切模量和切线模量的单位默认为 Gpa,屈服强度和拉伸极限的单位默认为 Mpa,密度的单位默认为kg/m3。
材料各参数的建议值如下表
参数名称 | 弹性模量 | 剪切模量 | 切线模量 | 屈服强度 | 拉伸极限 | 密度 |
---|---|---|---|---|---|---|
建议值 | 210 Gpa | 78 Gpa | 1.5 Gpa | 448 Mpa | 598 Mpa | 7850 kg/m3 |
在进行管道分析时,需要进行约束和边界载荷设置:
在进行载荷和压力设置时,常见的加载方式为斜坡加载,即前一半时间线性加载到最大值,后一半时间稳定。
4.1.1-4.1.4基本完成有限元力学模型的建模,此时要进行求解,需要设置求解参数,求解参数包括计算时长、时间步长、是否刚性接触、各个方向的阻尼。
提交计算任务前,需要进行任务名称、任务工作路径、结果输出次数和并行进程数的设置。 设置完后,可以生成求解器所需的输入文件,下表详细说明了求解器各输入文件的含义与用途,值得注意的是,求解器的输入输出文件均为txt格式。
序号 | 文件名称 | 文件解释与用途 | 文件格式 |
---|---|---|---|
1 | Element_Information_Solid | 单元信息 | txt |
2 | Ele_Node-六面体 | 单元信息,没有实质作用 | txt |
3 | NodeCoor | 结点坐标 | txt |
4 | InnerFace_PlaneEle | 内表面辅助单元拓扑信息 | txt |
5 | OutFace_PlaneEle | 内表面辅助单元拓扑信息 | txt |
6 | Material_Infor | 材料参数 | txt |
7 | NodeDisp_X | X方向位移载荷 | txt |
8 | NodeDisp_Y | Y方向位移载荷 | txt |
9 | NodeDisp_Z | Z方向位移载荷 | txt |
10 | NodeDisp_TimePoints | 施加位移载荷的插值时间点,通过 载荷时程来控制位移载荷加载速率 | txt |
11 | InnerPressure | 内压 | txt |
12 | OutPressure | 外压 | txt |
13 | Constrain_Nodes | 端部结点约束 | txt |
14 | DampingRatio_Input_dx | X平动方向阻尼 | txt |
15 | DampingRatio_Input_dy | Y平动方向阻尼 | txt |
16 | DampingRatio_Input_dz | Z平动方向阻尼 | txt |
17 | DampingRatio_Input_rx | X转动方向阻尼 | txt |
18 | DampingRatio_Input_ry | Y转动方向阻尼 | txt |
19 | DampingRatio_Input_rz | Z转动方向阻尼 | txt |
20 | Calculate_parameters | 计算参数文件 | txt |
当以上文件都已生成时,可以调用求解器进行相关计算,计算后生成的结果文件同样为txt格式。
以第一步为例,各输出文件含义如下表所示
序号 | 文件名称 | 文件解释与用途 | 文件格式 |
---|---|---|---|
1 | 00001-Ele_dDisp_Local_Solid | 单元坐标系下的单元结点位移 | txt |
2 | 00001-EleForce_Solid | 整体坐标系下的实体单元内力 | txt |
3 | 00001-Elementforce | 整体坐标系下的实体单元外力 | txt |
4 | 00001-EleStrain_Local_Solid | 单元坐标系下的单元应变 | txt |
5 | 00001-EleStrain_Solid | 整体坐标系下的单元应变 | txt |
6 | 00001-EleStress_Local_Solid | 单元坐标系下的单元应力 | txt |
7 | 00001-EleStress_Solid | 整体坐标系下的单元应力 | txt |
8 | 00001-force | 施加在节点上的力和内力 | txt |
9 | 00001-NodeCoor | 节点位置和节点位移 | txt |
10 | 00001-NodeStrain_Solid | 整体坐标系下的节点应变 | txt |
11 | 00001-NodeStress_Solid | 整体坐标系下的节点应力 | txt |
12 | 00001-PrinVec | 单元坐标与整体坐标转换矩阵 | txt |
将求解器生成的结果文件导入OceanKit后,可以进行后处理。
本节以示例的形式说明如何针对已计算完的结果开展可视化和分析工作,并解释OceanKit的使用逻辑。
注意: 在使用OceanKit的后处理功能时,建议先关闭项目文件,以免模型显示与结果显示重合。
假如已经开展了VFOSP的动力学计算,结果文件存放于org目录下,可以看到有以00001-xx,00002-xx开头的结果文件,为了将结果文件导入,可以有两种方式:
方式一:通过工作区和工具栏操作,如下图所示
步骤如下:
方式二:通过鼠标拖入
步骤如下:
通过以上两种方式打开文件后,加载结果数据对话框如下图所示:
该对话框的选项说明如下:
文件
模型
结点数据选择
表示选择导入哪些结点向量,注意,这里列出的都是结点属性,而非单元属性。这些向量属性在在计算中输出的文件数据,不需要OceanKit进行计算。
结点数据计算
表示基于前面的结点数据,让OceanKit进行二次计算得到的向量属性,目前支持Mises应力(SMises)和总位移(dS)
模型镜像
显示选项
下图表示导入结果数据后,会工作区结果项下产生名称为org的子项(称为结果模型),它包括模型数据、模型展示、数据修改、数据绘图4个子项。这4个子项分别以不同形式表达结果文件。
模型数据子项下会显示当前导入的结果文件的每一个时间步的数据(称为一帧),当点击“time 0”树结点时,在属性区会显示这一帧的基本信息。如下图所示:
可以看出,每一帧包含三种数据:
值得说明的是:
上图属性区中,可以看到点数据有两项,一个叫“point”,这是实际的结点数据集名称,在后面的显示设置中可以用到,而24121表示结点的数量。另一个叫"vfosp-tri-norm"的,是OceanKit生成的用于光照显示的点数据,一般情况下可以忽略它。
上图属性区中,边数据表示单元边的数据集名称和数量,而面数据则表示单元面的数据集名称和数量,同时也给出了所有数据的尺寸范围。
因为每一帧模型的状态是不一样的(比如云图),当点击每一帧子项时,模型显示区会展示所选帧的模型状态。
结果模型子项中的第二个文件夹叫模型展示,主要用于控制对模型结果进行三维显示,比如应力云图,变形等。可以在模型展示项通过双击树结点或者工具栏的新增子项,来添加不同的展示效果。
在OceanKit中,一个模型的一种显示形式称为展示,一个模型可以有多个展示,展示可以针对不同的基本数据采用不同的形式进行显示。展示是三维模型的基本显示单元,每一个展示隶属于一个结果模型。每个展示提供丰富的设置和选项,可以分别设置展示中点、边和三角形的显示形式,颜色,筛选等。基于展示,一个模型可以显示出十分复杂的三维图像。
例如,下图分别采用了两个不同展示,来表现同一个模型的不同部分:
下面通过显示结果模型的应力云图来说明对于数据三维显示的一些基本操作和概念。(注意:导入数据时请确认勾选了SMises结果数据。)
模型导入之后,OceanKit会在模型展示下生成一个默认的展示子项,点击该子项,可在属性区对三维展示进行控制,该项包括五个属性页,如下图所示:
以上属性页面的每个属性含义可参考第6. 界面操作,这里通过显示应力云图介绍部分属性的使用。
这样就完成了应力云图的显示设置,但当前时间步为第0帧,应力云图没有变化,所以显示的颜色是一样的,因此,可以选择不同的时间步,来显示应力云图分布,跳到不同时间步有两种方式:
方式 1:在工作区的模型数据树结点下选择不同的时间步数据子项即可转到相应的时间步
方式 2:通过菜单或工具栏按钮打开动画控制栏,如下图所示:
将动画控制栏的进度条中拖到不同的位置,即可显示不同时间步的数据。同时也可以用鼠标右键点击进度条不同的位置,跳到相应的时间步。
在显示区展示云图标尺的步骤为:
为了让模型显示更逼真,可以打开光照效果(注意:在导入数据时,选择了创建光照数据(占用更多内存)),操作步骤如下:
在后处理中,有时只想显示模型的部分区域,比如,只显示坐标x>-1
的模型区域,可以通过以下操作实现:
x>-1
,并回车,就完成了选择具体支持的其它表达式和规则可参考6.1 主界面介绍中的详细说明。
如果希望选择模型中某一个结点,并查看其信息,可以通过以下操作完成:
如果希望测量两个结点的间距,可以通过以下步骤完成:
如果要改变单元边的颜色可通过以下步骤完成:
后处理过程中,如果有需要截图保存的显示,可在设置好模型展示之后,点菜单或工具栏的截图按钮,截图文件名是自动生成的(这样可以多次截图,不用每次都输入文件名),保存的目录需要通过OceanKit的文件设置提前设定好,如下图所示:
动画播放功能可以通过动画控制栏进行操作,点击播放和暂停即可,也可以设置播放速度等信息,如下图所示:
在动画播放过程中,可以开启录制按钮,以对每一帧进行自动截图,并保存到截图目录。用户可以后期采用第三方工具将图片进行编辑并生成动画文件。
OceanKit支持对模型中某一结点属性随时间步的变化进行曲线绘图,也支持针对同一结果绘制多个曲线图以进行比较。
例如,要绘制结点1、45、678的Mises应力随时间步的变化曲线,操作步骤为:
以下是曲线绘图结果:
OceanKit支持从模型选择结点,并绘制曲线,具体操作如下:
首先,在模型展示中选择结点:
然后,在数据绘图中刷新曲线数据:
本节主要介绍OceanKit的界面操作和设置细节,以配合分析流程开展具体的计算。
上图是OceanKit的主界面,它包括几个主要的功能区:
下面分不同的功能区来介绍Viewer的功能的操作方式。
菜单栏包含一些主要的菜单功能,主要涉及文件的读写、模型数据编辑、显示、视图控制等。 每个菜单名旁边给出了该功能菜单的快捷键方式。
文件菜单的选项如下图所示:
编辑菜单的选项如下图所示:
注意: 不是所有的工作区结点都支持以上三个操作,有的结点是不能被删除或刷新的,有的结点不支持增加子项。
显示菜单的选项如下图所示:
工具菜单是用于后期加入一些特殊功能的分析工具,目前无功能支持。
关于菜单显示如下的软件简单信息。
工具栏为部分菜单的快捷方式,具体可查看工具的提示。
从左至右的工具对应的分类菜单功能为:
显示区主要显示模型的三维渲染和曲线绘图。
对于三维模型显示,其视角的操作方式为:
对于曲线图显示:
动画控制栏用于控制多时间步结果的动态播放,各个按钮的功能如下:
工作区和属性区是相互关联的,一般情况下,在工作区选定一个项目,会在属性区出现可供设置的属性。在属性列表中,有的是可以修改的,有的是只读的,具体取决于所选项目。目前OceanKit所提供的可设置项目包括以下几类。
主要显示软件的一些基本信息,包括:
版本:显示OceanKit的版本信息
版权:显示版权信息
开发:显示开发者信息
内存开销(Mb)
主要显示所新建的项目子项及信息,具体见下面的属性说明。
主要显示后处理相关的子项信息,具体见下面的属性说明。
目前不支持
主要针对OceanKit的一些全局参数进行设置
以下是图形显示所能控制的参数:
颜色: 全局相关颜色设置
字体:OceanKit的主要显示字体
光照:设置三维显示时的光照特性
坐标轴:设置三维显示区的坐标轴显示效果
下图是采用渐变模式的背景色,以及相关的坐标轴、微标显示:
以下是文件路径所能控制的参数:
工作文件:
HDF5文件:
管道项目的属性主要按计算流程分为模型尺寸、网格划分、材料属性、载荷定义、求解控制和计算任务几大类,如下图所示。
当在工作区选中项目时,会显示项目相应的全局属性,主要包括:
下面分别对各个子项的设置进行说明。
模型尺寸属性区有两个设置页面,分别用于控制模型参数和显示。
管道尺寸
止屈器尺寸
对称设置
模型尺寸属性区的另一个设置页面,是用于控制模型的显示:
模型显示
网格划分属性区有三个设置页面,分别用于网格生成控制、显示以及导出操作。
网格控制
网格信息
当点击生成按钮之后,会显示已划分网格的一些基本信息,包括:
单元结点显示
单元边显示
网格导出
当点击生成按钮之后,会在网格划分下也会生成一些常用的结点集子项,用于后面的载荷定义,可以点击不同的结点集,查看所对应的结点位置,如下图所示:
用于定义计算中用到的材料,可以定义多种材料类型。要添加新的材料类型,可以双击材料属性树形结点,或者点击工具栏的新建子项按钮。
新建了材料子项之后,可以对相应的材料进行设置,设置页面如下:
其中除了类型编号不能修改外,其它的属性都可以进行相应的修改。
用于给模型施加约束和载荷。选中该项后,在属性区会显示以下属性:
在这里可以选择不同的载荷类型(包括约束、压力、位移、力),点击新建,即可以产生相应类型的载荷子项进行设置。下面针对不同的载荷类型的属性设置进行说明。
用于对模型的部分结点自由度进行约束设置,可设置的参数如下:
属性
自由度
选择需要被约束的结点自由度
约束显示设置
这些属性可以设置约束在显示区的显示特性,包括可见性、尺寸、颜色。
用于对模型施加压力分布载荷,可设置的参数如下:
属性
压力值
设置压力值,压力值可以随时间进行变化,可以通过点击设置框的更多,来设置与时间相关的压力值:
在弹出的文本编辑器中,可以按行输入时间点和压力值,每一行代表一个时间点。图中表示0.0s的时候,压力值为1.0e5 MPa,当时间点为1.0s时,压力值也是1.0e5 MPa,而0.0 到1.0之间的压力值,程序会进行线性插值。
同样可以通过压力显示设置页,对压力载荷的显示特性进行调整。
用于对模型施加位移载荷,可设置的参数如下:
属性
参数
大小:设置位移大小,位移大小也可以随时间进行变化,可以通过点击设置框的更多,来设置与时间相关的位移值,其设置含义与压力设置类似。
参考方向:设置位移方向
同样可以通过位移显示设置页,对位移载荷的对应的结点集的显示特性进行调整。
用于对模型施加力载荷,可设置的参数含义和设置方法,可参考位移载荷。
用于设置求解过程的相关参数,主要包括:
时间设置
控制设置
阻尼设置
用于定义计算任务。选中该项后,在属性区会显示以下属性:
在这里可以选择采用不同的求解器进行计算(目前仅支持VFOSP向量有限元计算),点击新建,即可以产生相应的计算任务,并对任务相关参数进行设置。
VFOSP任务的参数设置和作用如下:
属性
结果
计算
导入结果数据后(参考:5. 后处理流程),会工作区结果项下产生结果模型及其子项,子项包括模型数据、模型展示、数据修改、数据绘图4个。下面分别介绍不同子项的属性含义。
模型数据主要包含所导入的数据帧,它的属性和说明如下:
点数据
边数据
面数据
边界尺寸
模型展示包含5个属性页,它们的属性和说明如下:
用于设置展示的一些公共属性。
基本属性
边界线框
渐变色卡
标签文字
箭头
用于设置点显示相关的属性。
点设置
颜色
模式:颜色模式,可选参数为,单色、类型以及云图
单色:所有点用相同颜色显示
类型:按点的类型显示
云图:按向量值对应的色标显示,云图模式可设置的属性有:
选择
对点进行选择,只有被选择的点才会被显示
x > 10
、all
、sin(x*x+y*y) > 0
等属性向量
向量列表:列出该点集合中所包括的向量名称(只读),便于修改操作
向量运算:对点信息中的向量进行修改,修改的规则为
del ep Attrib
:删除所有Frame中的名称为ep和Attrib的向量del F[:].ep
:删除所有Frame中的名称为ep的向量del F[0].ep
:删除第0个Frame中的名称为ep的向量set dx x-F[0].x + 1.5
:设置向量dx
为x-F[0].x + 1.5
,如果dx不存在,则会新建set ds sqrt((x-F[0].x)^2 + (y-F[0].y)^2)
:设置dsset F[0:12].x x+0.5
:设置第0到第12个Frame的x
为x+0.5
F[12:34].x
:获得第12到34个Frame的x向量用于设置边显示相关的属性。
用于设置面显示相关的属性。
用于设置结点拾取相关的属性。
数据绘图包含2个属性页,分别控制绘图的数据开源和显示。
用于设置绘图数据来源。
X轴数据
Y轴数据
用于设置绘图显示特性。
属性
曲线控制