刚刚开始使用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. 继续吐槽在net下没有合适的Disk Cache之使用EhCache

    说起缓存,大家可能口若悬河,各种类型的缓存都能一一分析,但在net下找到一款合适的Disk Cache貌似还是有一点难度的. 一:背景 事情是这样的,最近的一个项目中,需要在web端绘制一些报表,因为 ...

  2. 每天学习点--------第六天(2017-10-10) 摘要: mysql和Oracle的区别

    1.自动增长数据类型的处理 Mysql有自动增长的数据类型,插入记录时不用操作此字段,会自动获取数据值.Oracle没有自动增长的数据类型,需要建立一个自动增长的序列号,插入记录时要把序列号的下一个值 ...

  3. USACO Humble Numbers

    USACO  Humble Numbers 这题主要是两种做法,第一种是比较常(jian)规(dan)的-------------用pq(priority_queue)维护,每次取堆中最小值(小根堆) ...

  4. MQTT TLS 加密传输

    MQTT TLS 加密传输 Mosquitto原生支持了TLS加密,TLS(传输层安全)是SSL(安全套接层)的新名称,生成证书后再配置一下MQTT代理,本文主要介绍Mqtt如何实现双向认证和单向认证 ...

  5. Java字符串的split(String str)方法空串的问题

    String strs[] = "SS1BB2CC3".split("\\D+"); public static String Test(){ Date d = ...

  6. 极其简单的帮你理解ORM中的关联关系

    ORM对象关系映射(英语:(Object Relational Mapping,简称ORM,或O/RM,或O/R mapping),是一种程序技术,用于实现面向对象编程语言里不同类型系统的数据之间的转 ...

  7. SQL数据库开发中的一些经典代码

    1.按姓氏笔画排序: Select * From TableName Order By CustomerName Collate Chinese_PRC_Stroke_ci_as  2.数据库加密: ...

  8. git基本语法

    基本用法(上)               一.实验说明 本节实验为 Git 入门第一个实验,可以帮助大家熟悉如何创建和使用 git 仓库. 二.git的初始化 在使用git进行代码管理之前,我们首先 ...

  9. Flask-uploads 简单使用

    pip install flask-uploads#先导入次此处需要用到的库: from flask_uploads import UploadSet, IMAGES, configure_uploa ...

  10. SpringMVC源码情操陶冶#task-executor解析器

    承接Spring源码情操陶冶-自定义节点的解析.线程池是jdk的一个很重要的概念,在很多的场景都会应用到,多用于处理多任务的并发处理,此处借由spring整合jdk的cocurrent包的方式来进行深 ...