刚刚开始使用ls-dyna,几天前还只知道点开dyna界面,然后就没有然后了,没人带,资料也没多少,但是科研还得继续往下做呀(手动滑稽),通过在仿真论坛上搜索相关的资料,并通过自己的一步步操作,做了大概有5个例子,目前成功了两个,一个是平板压力加载以及刚性球撞击弹性平板,大体的流程已经全部搞清楚了,现在把我的一些经验发到网上,供大家参考,后续我也还会继续做下去,可以和不知远在何方的你们一起交流,也是一大幸事。

  钢球撞击平板的例子可以在http://www.lstc.com/lspp/content/tutorials/1/t1p1.shtml找到,这个网站上有一步步从建模到分析的全部步骤,但是我在做的过程中发现了教程存在了一点点小问题,我通过比对别人的操作,发现了问题所在,这个后面详细讨论。

  打开ls-dyna主界面,如下图1所示,看起来像是啥都没有,但是其实,这个界面是所有分系统的集成,Solver是求解器,LS-PrePost是最常用的前后处理器,这个里面包含建模、网格处理、约束、材料定义、截面属性定义、边界条件、载荷等,它可以直接生成K文件,并且对结果进行后处理,LS-PrePost打开后的界面如图2所示。

图1  Ls-dyna主界面

图 2 LS-Propost主界面

  第一步,建立球-板网格:图2中,目前的界面是停留在Model界面,往上有Mesh以及相关集合按钮,往下有Post后处理模块。由于球-平板系统很简单,可以直接利用Mesh模块生成相应的网格。对于球:进入Mesh>ShapeM(Shape Mesher)->Sphere_Solid,输入相应的半径、位置、网格密度、标识名就可创建球的网格;对于平板:Mesh->ShapeM(Shape Mesher)->4N_Shell,输入相应四个角点的位置、每条边的网格密度、标识名即可,到这里,网格部分就创建成功了。

  第二步,建立材料属性:点击Model,选择左侧的Keyword。我们需要明白一个事实,pamcrash/dyna等碰撞分析有限元软件全部时候以关键字驱动的,后面的许多求解设置均是在Keyword中完成的,在操作过程中需要仔细查看Keyword,对于后续的操作有很多好处。点开Keyword时,会出现如下的Manager界面。Model选项是当前已经定义过的关键字,ALL选项是所有可选的关键字,这里我们要选ALL。这是我已经设置好K文件,蓝色的是我设置过关键字的地方,后面的数字是关键字下设置的次数。

图 3 Keyword manager界面

  找到Mat选项,对球钢球,选择020-rigid材料,双击设置相应的参数,如图4所示。平板选择024号材料,操作步骤和前面的设置一样,材料参数可以参考前面的网址给出的数据。

图 4 材料属性定义

  第三步,设置Section。这里的section其实主要是设置针对shell、solid、beam的积分点数、积分算法等,具体的我没研究透,可以照着官网的先设置。已shell为例,设置图5所示。

图 5 section设置

  第四步,将材料以及界面属性赋给网格。在keyword中展开PART,选择子选项下的第一个,也叫作PART,双击打开编辑,设置如下。ball和plate要分别赋属性,有个细节需要强调的是,设置好后要先Accept,然后Done离开,否则更改不会保存,切记切记。

图 6 赋材料属性界面

  第五步,指定边界条件。首先选择Model->CreEnt,如图7所示,进入图8所示的界面,选中create,选择平板的四条边,并且选中X/Y/Z,约束所有的平动自由度,apply确定。

图 7

图 8 载荷边界条件施加菜单

  第六步,对球施加一个整体的速度。在图8中选择initial->vilocity,选择create,选中球的所有网格节点,设置z向的速度-10,apply后设置成功。

  第七步,建立接触集合。在图8中选择Set Data->*SET-PART,双击编辑,将球以及平板全部选中,APPLY完成。

  第八步,设置接触属性。回到Keyword选项卡,在列表中找到Contact选项,选择AUTOMATIC_SINGLE_SURFACE,双击编辑。点击NEWID,会生成contact的标识号,SSID是从面集合,MSID是主面集合。这里由于选择的接触属性的原因,我们在SSID后面点击黑点,选择我们之前设置的接触集合,在MSID中填入0,SSTYP填2。如果对于这个选项有疑问,可以单击该标识符,在信息提示栏就会显示详细的信息。

图 9  设置接触

到这里就只剩下相应的求解控制参数以及输出控制变量设置了,我不再一一复述了,给大家看下我在网上找到的资料。如果涉嫌知识产权问题,还望见谅。官网教程中,没有沙漏控制这一选项,导致文件提交会报错,显示load curve 没有定义之类的,在做的时候注意加上。注:官网有的数据用官网的,官网没有的就用图片上提供的。

  做完以上的内容就可以提交计算啦。

  

ls-dyna基础教程的更多相关文章

  1. python基础教程(一)

    之所以选择py交易有以下几点:1.python是胶水语言(跨平台),2.python无所不能(除了底层),3.python编写方便(notepad++等文本编辑器就能搞事情),4.渗透方面很多脚本都是 ...

  2. HBase入门基础教程之单机模式与伪分布式模式安装(转)

    原文链接:HBase入门基础教程 在本篇文章中,我们将介绍Hbase的单机模式安装与伪分布式的安装方式,以及通过浏览器查看Hbase的用户界面.搭建HBase伪分布式环境的前提是我们已经搭建好了Had ...

  3. 【HBase基础教程】1、HBase之单机模式与伪分布式模式安装(转)

    在这篇blog中,我们将介绍Hbase的单机模式安装与伪分布式的安装方式,以及通过浏览器查看Hbase的用户界面.搭建hbase伪分布式环境的前提是我们已经搭建好了hadoop完全分布式环境,搭建ha ...

  4. ASP.NET Core Identity 迁移数据 - ASP.NET Core 基础教程 - 简单教程,简单编程

    原文:ASP.NET Core Identity 迁移数据 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core Identity 迁移数据 上一章节中我们配置了 ...

  5. ASP.NET Core 设置和初始化数据库 - ASP.NET Core 基础教程 - 简单教程,简单编程

    原文:ASP.NET Core 设置和初始化数据库 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 设置和初始化数据库 上一章节中我们已经设置和配置好了 EF ...

  6. linux lvm管理基础教程

    linux lvm管理基础教程 本人是在redhat7.x系统上亲测lvm管理功能,至于文中所受的CentOS 6 没有亲自试过. 本文来自:https://geekpeek.net/lvm-phys ...

  7. Termux基础教程(二):软件包安装

    Termux基础教程(二):软件包安装 Termux是一个在安卓手机上模拟Linux系统的高级终端,这个终端十分强大,实用. Termux可以安装Liunx的各种软件包,这就是Termux的灵魂所在. ...

  8. Spring Cloud Alibaba基础教程-Nacos(一)

    2019快结束,也有很久没写博客了,今天我们来谈谈Nacos,如果对您有帮助,麻烦左上角点个关注 ,谢谢 ! 嘻嘻 今天先写第一篇 文章目录 为什么要使用Nacos Eureka 闭源 Nacos的优 ...

  9. matlab基础教程——根据Andrew Ng的machine learning整理

    matlab基础教程--根据Andrew Ng的machine learning整理 基本运算 算数运算 逻辑运算 格式化输出 小数位全局修改 向量和矩阵运算 矩阵操作 申明一个矩阵或向量 快速建立一 ...

  10. <<Bootstrap基础教程>> 新书出手,有心栽花花不开,无心插柳柳成荫

    并非闲的蛋疼,做技术也经常喜欢蛋疼,纠结于各种技术,各种需求变更,还有一个很苦恼的就是UI总是那么不尽人意.前不久自己开源了自己做了多年的仓储项目(开源地址:https://github.com/he ...

随机推荐

  1. MIP (百度移动网页加速器)

    前言:第一次用移动网页加速器,感觉好心情都被弄坏了.确实性能提高了不少,但是限制js,对于一些交互实现都成问题.MIP是Mobile Instant Pages的缩写,指百度移动网页加速器, 是一套应 ...

  2. 【BootStrap】 布局组件 II

    BootStrap 布局组件 II ■ 分页 BS中通过.pagination的ul元素来实现一个分页集合,一个典型的分页如下: <ul class="pagination" ...

  3. c++ --> 重载、重写(覆盖)和隐藏的区别

    重载.重写(覆盖)和隐藏的区别 一.重载 重载从overload翻译过来,是指同一可访问区内被声明的几个具有不同参数列(参数的类型,个数,顺序不同)的同名函数,根据参数列表确定调用哪个函数,重载不关心 ...

  4. linux --> vimrc的配置

    vimrc的配置 .vimrc文件: " 去掉讨厌的有关vi一致性模式,避免以前版本的一些bug和局限 set nocompatible "代码补全 set completeopt ...

  5. 实现Windows程序的更新

    实现Windows程序的更新 一.使用枚举避免不合理的赋值 1.使用枚举的好处: 使用常量类中Student类中加入一个特别属性,StudentGender,而且这个属性只能接受两个有效值," ...

  6. 十分钟释疑Oracle中“小表超慢”之谜(SQL调优/SQL优化)

    前几天,一个用户找到我,说查一个小表的时候非常慢,我问有多慢,他说最快也得半个小时才能出结果,有时干脆不出结果,我说小表多大,他说就几十兆,有点疑惑,让他帮忙获取了相关信息,一看就明白了,原来所谓的小 ...

  7. Eclipse配置类似sublime的黑色主题

    另一篇中,详细介绍了如何使用Eclipse+Pydev搭建Python环境,传送门:http://www.cnblogs.com/BH8ANK/p/8688110.html 下面介绍下如何在Eclip ...

  8. 使用linux下的crontab定时任务跑定时脚本

    使用linux下的crontab定时任务跑定时脚本 tags:定时任务 定时脚本 crontab linux定时脚本 linux 引言:应该有许多人曾经很好奇一些定时脚本是怎么做出来的.我们这次就来说 ...

  9. mysql数据库导入sql文件时提示“Error Code: 1153 - Got a packet bigger than 'max_allowed_packet' bytes”解决办法

    向mysql数据库中导入sql文件时,如果文件过大(几百M),会提示"Error Code: 1153 - Got a packet bigger than 'max_allowed_pac ...

  10. C语言--第七周作业

    一.求交错序列前N项和 1.代码 #include <stdio.h> int main() { int i=1,N; double j=0,sum=0; scanf("%d&q ...