电子书 工程设计

MSC Marc 高级有限元仿真:用户子程序应用(英文版电子

¥1.90 已售 0
✓ 自动发货 ✓ 永久有效 ✓ 售后保障

资源介绍

书) 本书旨在为读者全面介绍 MSC Marc 软件的高级特性,即用户可使用 FORTRAN 编程语言编写用户子程序,实现对核心代码某些模块的替换,以及新功能(如本构关系或新单元)的实现,从而轻松扩展这一商业代码(“黑箱”)的功能,兼顾商业软件包的优势与 “半开放” 代码的灵活性。 第 1 章:FORTRAN 高级特性 考虑到 Marc 基于 FORTRAN 编程语言,掌握该语言的基础知识必不可少,熟悉其高级特性更能改善代码结构。本章对 FORTRAN 语言的高级功能进行了全面回顾。 基础概念:介绍了 FORTRAN 语言的基本概念,包括标准语法、基本定义、语句顺序、源文件格式、编程约定和标识符命名等。其中,语法是编程语言的正确语法呈现,文中采用简化符号展示实体;还解释了实体、字符集、标记、名称、标签、关键字等重要术语,以及语句顺序规则,明确了程序单元中各部分的组成和顺序。 编程阶段与工具:探讨了编程的阶段和工具,强调逻辑规划的重要性,介绍了伪代码和流程图的约定,这两种工具独立于编程语言,有助于结构化编程,能帮助程序员更好地规划程序逻辑。 控制结构:详细讲解了 FORTRAN 中的控制结构,包括 IF 构造、CASE 构造、DO 构造等,这些结构用于实现选择和重复逻辑,不同的构造有其特定的语法和应用场景。 过程 / 模块化编程:阐述了过程编程和模块化编程的概念,介绍了程序单元的结构、子程序、过程引用和参数以及模块等内容,模块化编程通过模块实现数据和过程的封装与共享,具有诸多优势。 规范部分:涵盖了 USE 语句、IMPLICIT 声明、声明构造以及关联和作用域等内容,规范部分用于准备数据环境,不同的语句和构造有着不同的功能和使用规则。 数据类型声明:讲解了数据类型声明相关知识,包括类型参数、数据表示、内在数据类型(数值类型和非数值类型)、表达式、运算符和操作数、派生数据类型以及数组等,明确了不同数据类型的特点和使用方法。 数据属性:介绍了多种数据属性,如 PARAMETER、PUBLIC 与 PRIVATE、SAVE 和 COMMON、DATA 语句和显式初始化、INTENT 和 OPTIONAL、ALLOCATABLE、POINTER 和 TARGET 等,这些属性用于使类型声明更具体。 输入输出管理:详细说明了输入输出管理,包括文件、记录和位置,连接语句,数据传输语句,文件定位语句,INQUIRY 语句以及数据格式等,I/O 操作在程序执行中耗时较多,需重视其性能。 文件访问总结:总结了文件访问的不同方式,包括顺序格式化访问(前进和非前进)、顺序非格式化访问以及直接访问(格式化和非格式化),不同的访问方式有其适用场景和特点。 第 2 章:Marc/Mentat 简介 本章解释了 Marc/Mentat 的内部结构,涉及 Marc 与 Mentat 的交互、程序文件、输入文件结构、表格驱动输入、集合、用户定义子程序、预定义公共块、调试技巧等方面,还简要介绍了过程文件、在 FORTRAN 中使用 C 编程语言代码以及 Python 脚本(PyMentat 和 PyPost)。 MARC/MENTAT 交互:Marc 是核心求解器,Mentat 是负责有限元模型前后处理的图形用户界面。Mentat 将建模过程转换为输入文件并传递给 Marc 求解,求解结果再返回给 Mentat 进行后处理,期间会产生多种文件。同时介绍了 Mentat 命令、MARC 求解器类型以及安装文件夹的结构。 输入文件:输入文件是包含有限元模型所有相关数据的文本文件,其结构分为参数数据、模型定义数据和历史定义数据三组命令,有固定格式和自由格式两种格式约定,还可使用扩展精度模式。此外,介绍了修改输入文件的方法、表格驱动输入以及项目、集合和编号等内容。 子程序:Marc 支持用户定义子程序,这是其强大功能之一。子程序有特定的结构,包括子程序头、数据环境、可执行构造等。预定义公共块用于在子程序间共享数据,文中还介绍了子程序的激活方法。 调试:编程中难免出现错误,本章介绍了常见的错误类型及避免方法,如未初始化变量、访问违规等,还讲解了请求额外信息、激活调试模式、使用编译器指令以及控制作业提交等调试相关内容,另外还提及了使用 Visual Studio IDE 进行调试的方法。 其他工具:介绍了过程文件、Python 与 Mentat 以及 C 编程语言等其他工具。过程文件可记录命令链,Python 脚本可结合 Mentat 的命令和编程语言的能力,还可进行混合语言编程,实现 FORTRAN 与 C 语言的交互。 第 3 章:基本示例 本章通过几个简单问题,借助子程序进行求解,帮助读者回顾前面章节介绍的编程概念,实践 Marc/Mentat 的相关概念,重点关注结构问题,子程序结构简单,子程序间的交互最少,为后续更复杂的编程问题奠定基础。 概述:介绍了本章的目的,即通过简单示例熟悉在有限元问题中使用子程序,所有示例在未特别说明的情况下均使用默认值。 示例:包括多个示例,如使用 FORCDT 子程序在静态分析中施加移动点载荷,使用 FORCEM 子程序施加线性分布载荷,使用 WKSLP 子程序定义弹塑性材料的硬化曲线,使用 PLOTV 子程序提供用户定义的单元变量,使用 HOOKLW 和 ORIENT2 子程序定义各向异性材料及其方向,使用 USDATA 和 UACTIVE 子程序实现单元的激活 / 停用,使用 SEPFOR 和 MOTION 子程序进行静态接触分析等。每个示例都详细说明了问题描述、子程序代码及实现效果。 第 4 章:高级示例 本章的示例更为复杂,涉及多个子程序及其交互和通信,进一步拓展了子程序在有限元分析中的应用,通过这些示例,读者可以更深入地理解和运用 Marc/Mentat 的用户子程序功能。 第 5 章:自定义模块列表 介绍了自定义模块的概述、命名规则和缩写以及具体的模块,如 MarcTools 模块、FileTools 模块、MiscTools 模块等,这些模块包含了多种用于处理有限元分析中各种数据和操作的子程序。 书籍价值与意义 本书为从事有限元仿真相关工作的人员提供了全面且深入的指导,无论是学术界还是工业界的读者,都能通过本书掌握使用 MSC Marc 软件进行高级有限元仿真的关键技能,尤其是用户子程序的编写与应用,从而更好地解决实际工程中遇到的复杂非线性问题,提升有限元分析的效率和准确性。书中的示例丰富且具有代表性,有助于读者将理论知识转化为实际应用能力。