- 博客(39)
- 收藏
- 关注
原创 张量分析:从基础到连续介质力学应用
张量分析是连续介质力学、弹性力学、塑性力学等力学分支的核心数学工具。本指南将从张量的基本定义、分类表示、运算规则到坐标变换特性进行系统讲解,帮助学习者建立扎实的张量分析基础。张量的本质是多重线性映射,但通过指标记法和爱因斯坦求和约定,能够将复杂的多维关系简洁地表达出来。掌握张量分析不仅能够理解力学理论的数学表述,还能够为后续学习连续介质力学中的应变张量、应力张量和本构方程等核心概念奠定基础。张量分析通过指标符号和坐标变换理论,将复杂的物理关系转化为简洁的方程形式,成为连续介质力学、流体力学等领域的通用语言。
2025-05-05 00:40:02
811
原创 弹性力学基本方程及有限元编程
在工程领域,无论是设计一座桥梁、制造一台精密机械,还是研发航空航天部件,都需要弄清楚材料在受力时会发生怎样的变化。弹性力学就是专门研究这个问题的学科,它通过微分平衡方程、几何方程和物理方程,为我们揭示材料内部应力、应变和位移的规律。而有限元方法,则是帮助我们把这些理论应用到实际工程计算中的强大工具。弹性力学三大方程与边界条件构成理论基础,有限元方法通过离散化实现工程问题的数值求解。
2025-04-26 10:16:49
958
原创 弹性力学基本方程及有限元编程
在工程领域,无论是设计一座桥梁、制造一台精密机械,还是研发航空航天部件,都需要弄清楚材料在受力时会发生怎样的变化。弹性力学就是专门研究这个问题的学科,它通过微分平衡方程、几何方程和物理方程,为我们揭示材料内部应力、应变和位移的规律。而有限元方法,则是帮助我们把这些理论应用到实际工程计算中的强大工具。弹性力学三大方程与边界条件构成理论基础,有限元方法通过离散化实现工程问题的数值求解。
2025-04-26 10:13:38
1065
原创 弹性力学中的“单元体“辨析
在弹性力学中,单元体是从物体内某一点处截取的边长为 dx,dy,dz的无限小正六面体,其核心作用是将连续介质的力学行为局部化。通过以下基本假设构建分析框架:连续性假设:单元体内物质无间隙填充,应力、应变、位移等物理量可表示为坐标的连续函数。小变形假设:变形量远小于单元体尺寸,高阶小项(如 (∂u/∂x)2) 可忽略,几何方程线性化。均匀性与各向同性假设(针对特定材料):单元体材料性质均匀,且各方向力学性能相同(各向同性材料适用)。完全弹性假设:单元体的受力(应力)与变形(应变)成线性关系。
2025-04-24 20:34:38
786
原创 解码刚度矩阵:重新认识有限元静力分析
在有限元静力分析的核心方程 F=KU 中,刚度矩阵 K 不仅是结构刚度的数学表征,其特征值与特征向量更蕴含着对结构行为的深层描述。尽管静力分析通常聚焦于静载荷下的平衡解,但刚度矩阵的特征谱(特征值与特征向量)依然是理解结构刚度特性、变形模式及求解效率的关键。本文从数学本质、物理意义及工程应用三方面,剖析其深层次内涵。刚度矩阵的特征分解,本质上是将复杂结构的整体行为分解为一系列 “基本事件”(模态)的叠加。
2025-04-20 21:50:16
825
原创 Abaqus显示提交,但是不求解怎么办?终于知道原因了
昨天上午老师突然发消息说晚上开个组会,我这周一直在看文献也没啥实质性进展,就想着随便做个模拟应付下老师。卧槽,没想到Abaqus提交作业后,一直不求解。具体问题如下:时间紧急,加上有点慌张,一整就是两个多小时也没解决。后果可想而知。。。。。。因此中秋节我要修电脑了。
2023-09-29 12:11:19
23718
4
原创 Ansys 2023 R2软件安装教程(附安装包)
在结构力学模块方面,ANSYS Products可以模拟各种静态和动态载荷条件下的结构行为,包括线性和非线性分析、疲劳分析、接触分析等,并可以应用于机械、航空航天、汽车、建筑等行业。此外,在Ansys 2023 R2版本中,还优化了块记录功能以提高可读性、简化了光源和sensor等的定义方式、增强了GPU功能以更好地支持仿真模拟运行等。在流体力学模块方面,ANSYS Products可以模拟各种流体流动和传热问题,包括内部和外部流动、多相流动、热交换器等,并可以应用于各种行业。33、设置系统变量。
2023-09-24 10:06:20
59557
122
原创 Abaqus子程序:Uvarm子程序——自定义云图
在包含用户定义输出变量规范的材料定义中,会在所有的元素材料计算点上调用该子程序;因为Abaqus/Standard迭代到收敛解,可能会在每个增量中的每个材料点上多次调用;会在每个步骤的每个增量中调用;允许您定义作为任何可用积分点数量的函数的输出量,这些数量在“使用Abaqus/Standard输出变量标识符”表中列出;允许您将材料方向定义为输出变量;可以用于垫片元素;可以调用实用程序GETVRM以访问材料点数据;除了静态扰动过程外,不能与线性扰动程序一起使用;
2023-09-23 19:40:10
1540
原创 Mathematical13 快速入门上篇(很详细)
原文链接:https://mp.weixin.qq.com/mp/appmsgalbum?__biz=MzkxMzQ0NzY1OQ==&action=getalbum&album_id=2928367776166248448#wechat_redirect
2023-09-14 16:23:09
156
原创 一起学习C++:2.3 计算机中的常量和变量
C++语言变量必须"先定义,后使用”,定义变量的一般形式是:变量定义后,变量值是未确定的(除了静态存储情形),即变量值是随机的。直接使用此时的变量参与运算,运算结果也是随机的。
2023-09-13 16:12:36
143
原创 有限元中的约束算法——拉格朗日乘子法与罚方法
今天简单介绍下有限元中求解有类似于方程约束问题的两类常见算法:拉格朗日乘子法与罚方法分享一个杆单元在约束条件下受力F的求解案例,旨在分享求解算法思想:首先根据几何方程、物理方程等计算系统势能,然后将约束条件条件考虑进来,求势能的最小值(最小势能原理)。这一过程本质上是将有约束的优化问题转化为无约束优化问题。问题简图如下:(具体的两类算法求解程序如后)1.拉格朗日乘子法拉格朗日乘子法是一种常用的数学工具,用于处理约束条件下的优化问题。
2023-09-12 11:53:22
1173
原创 C++学习:2.3计算机中的常量和变量
由于每个字符都有一个确定的ASCII码,肯定都可以用\ooo或\xhh表示,因此,\ooo和\xhh称为通用转义字符,其中ooo表示可以用1至3位八进制数作为码值表示一个ASCII字符,hh表示可以用1至2位十六进制数作为码值表示ASCII字符。例如\t为水平制表符,实际上电脑屏幕被分为一些制表区,每8列为一个制表区,每次输入\t,光标就会跳到下一个制表区起始列,要注意的是输入一次\t,是每步跳一个空格,最多跳8步,也就是从当前制表区所在列,一步一步的跳到下一个制表区的起始列。
2023-09-06 20:19:53
154
原创 有限元分析中,怎么理解节点自由度?
对于过拟合产生原因的一个解释是离散点数据太少了,距离离散点较远处的信息随着位移插值(试)函数阶次的提高,越来越难被插值点控制。因此只能适当提高位移插值(试)函数阶次。好了现在回归正题。
2023-09-04 09:02:36
2561
原创 2.2 计算机中的数据类型
(这里如果用0.00000678就会被默认解释为双精度浮点数类型,即在二进制转换时用64位存储对应的方法来表示,也就是说十进制的数字要转化为二进制,但是同一个数字转化为单精度和双精度的结果是不同的。C++中这里的0.00000678f叫做常量或者字面常量,别的语言可能就是说是个数字,不强调啥量,这里结尾f是表示这是个float型浮点型数据,因为默认的话,编译器会把他解释为double型,然后用double型对应的二进制转化方式表示。(红色标注的是C++特有的数据类型,其余是C中就有的数据类型)
2023-09-02 11:14:14
331
原创 一起学习C++:2.1计算机中的数据存储与表示
其中十进制的0~31和127属于控制字符(就是起控制作用的),其余的是图形字符(可以显示到屏幕上的),例如”0”这个字符对应的ASCII码为十进制的48,它在内存中存储的也就是48对应的二进制值,其余的数字依次加1;首先将50.0转化为二进制形式110010.0B(B是来标识数值是二进制,十进制用D,八进制用O,十六进制用H),然后按照规范化数的形式写成(-1)0 * 25 * 1.100100B(二进制的指数记法和十进制一样,小数点左移几位,位权就对应几次方),进而得到。例1中的结果上面已经分析过。
2023-08-31 23:25:39
163
原创 Abaqus子程序:基础知识概述2
局部坐标系统最初可能是相对于零件坐标系统定义的,但根据给定的零件实例的定位数据进的坐标系统定义是用户子程序中使用的局部方向的定义。可以将实用程序包含在用户子程序中。单元的解依赖变量可以定义为这些子程序中出现的任何其他变量的函数,并且可以相应地更新。如果在分析中定义了由状态变量控制的元素删除,那么控制删除标志的状态变量的值可以由使用状态变量的任何用户子例程进行修改,前提是用户子程序在材料点处被调用。对于大多数子程序,需要在每个材料的材料定义中输入在点或节点处所需的这些变量的数量,以考虑依赖于解的状态变量。
2023-08-28 22:05:36
1784
原创 Abaqus子程序:基础知识概述1
在Abaqus/Standard 中,有时候需要建立运行时间环境并管理与外部数据文件之间的交互作用,或者与用户子程序连接中使用的并行进程之间的交互作用。或者可能为了后处理,需要将用户子程序中的COMMON 块变量所具有的在多个单元上积累得到的输出量,在一个收敛的增量末尾处写入到外部文件中。以便从堆而不是堆栈中分配内存。用户子程序必须执行它们的既有的功能,而不覆盖Abaqus 的其他部分。开发用户子程序时,在尝试将它们用于生产分析工作之前,最好在较小的示例中测试它们,其中用户子程序是模型中唯一复杂的方面。
2023-08-27 21:23:41
3069
原创 Abaqus实用技巧:自适应网格技术(ALE)
Abaqus/Standard通过周期性地创建一个新声学网格来解决计算声学域当前构型的问题,所创建的声学域使用与原来网格一样的拓扑结构,但是节点进行了调整,这样结构-声学边界的变形不会导致声学单元的严重扭曲。拉格朗日网格是一种常用的网格类型,也是有限元分析中最常见的网格类型之一。在可预见的大变形的问题中,从自适应网格划分得到的改进的网格质量可以防止分析因严重的网格扭曲而终止。Abaqus的自适应网格技术可以根据模型的特性和求解需求,自动调整网格的细化或粗化,以获得更准确的结果或更高的计算效率。
2023-08-24 19:58:37
7002
1
原创 Abaqus实用技巧:后处理云图动画多窗口同步显示
Abaqus是一种广泛使用的有限元分析软件,它提供了强大的后处理功能,用于对仿真结果进行可视化、分析和解释。Abaqus的后处理模块允许用户对仿真结果进行全面的评估和理解,并从数据中提取关键信息。Abaqus的后处理功能包括以下方面:结果可视化:Abaqus可以将仿真结果以丰富的方式进行可视化展示。用户可以查看模型的应力、应变、位移等物理量的分布情况,并通过不同的图形和动画效果来呈现结果。这有助于直观地理解仿真结果以及模型的行为和性能。
2023-08-19 12:54:28
2702
原创 Abaqus实用技巧:后处理云图动画多窗口同步显示
用户可以查看模型的应力、应变、位移等物理量的分布情况,并通过不同的图形和动画效果来呈现结果。Abaqus是一种广泛使用的有限元分析软件,它提供了强大的后处理功能,用于对仿真结果进行可视化、分析和解释。Abaqus的后处理模块允许用户对仿真结果进行全面的评估和理解,并从数据中提取关键信息。用户可以选择感兴趣的位置,比如断面、剪切线或自定义路径,并获得相应的物理量的数值和图表展示。后处理脚本编程:Abaqus提供了Python脚本接口,允许用户编写自定义的后处理脚本来实现更高级的数据处理、结果分析和报告生成。
2023-08-18 23:27:18
4778
1
原创 一起学习C++:1.计算机基础概述
考虑到数值计算对求解速度的要求较高,以及C++语言的通用性等主要优点,之前入门学习了C++高级编程语言,未来会更新C++基础语法到面向对象部分的内容。内容会讲的比较细和基础,无论是0编程基础还是有其他语言基础的朋友都可以跟着一起学习,学过C++的也可以作为复习和查漏补缺,加深记忆。C++是一种通用的高级编程语言,具有以下优势:高效性:C++是一种编译型语言,可以产生高效的机器代码。它提供了底层的内存管理和直接访问硬件的能力,使得程序的运行速度非常快,适用于对性能要求较高的应用领域。
2023-08-18 23:11:07
142
1
原创 Abaqus实用技巧:弯矩、轴力、剪力提取方法详解
最近在学习和对比一些界面本构的差异和效果,发现网上一些cohesive单元插入插件使用起来不仅方便,而且可以实现一些特殊的效果,如果大家有这方面的插件希望分享下,我也是刚开始接触,这些对我也很重要,后续我也会继续分享使用所得的技巧和收集的相关资料。3.进入report,点击free body cut,然后进行下图的设置。4.把导出的数据复制到excel中即可,分析和绘图等。1.进入后处理,点击view cut,如下图。2.选择截面位置和截面数量,具体见下图。
2023-08-07 18:20:10
6367
原创 Abaqus二次开发:Vfric摩擦子程序
(1)用于定义接触对表面之间的摩擦行为;(2)当经典库仑摩擦模型限制性太强且需要定义更复杂的接触面之间剪切传递时,可以使用;(3)必须提供接触面之间剪切相互作用的完整定义;(4)可以使用和更新与求解相关的状态变量;(5)不能与软化的切向表面行为结合使用;(6)不能与通用接触算法一起使用。主要内容1.调用方法2.用户子程序接口3.要定义的变量4.传递信息的变量5.案例讲解该数组必须更新为局部切线方向上所有接触点的摩擦力分量的当前值。重置之前此数组将为零(无摩擦力)。
2023-08-06 23:22:33
2343
1
原创 Abaqus子程序单步调试技巧
对于一些复杂的子程序报错问题,尤其是代码量较大时,往往我们需要使用一些程序调试技巧,对于abaqus子程序的单步调试往往有以下优点:1.追踪代码执行流程:通过单步调试,可以逐行查看代码的执行顺序,了解代码是如何运行的。这对于理解代码的逻辑以及发现可能的错误非常有帮助。2.观察变量数值:单步调试允许我们在每个执行步骤中观察变量的数值。这可以帮助检查变量是否按照预期进行计算,是否存在错误或异常情况。3.检查条件和循环:通过单步调试,仔细检查代码中的条件判断和循环语句是否按照预期执行。
2023-07-23 22:11:48
2182
原创 Abaqus子程序之UTEMP
节点号 NODE 处的温度值数组。如果节点未连接到梁或壳单元,则仅需返回一个温度值 (NSECPT=1)。否则,要返回的温度数取决于为梁或壳截面选择的温度模式和场变量输入。以下情况是可能出现的:梁截面的温度和场变量作为梁截面描述中显示的点处的值给出。所需值的数量 NSECPT 由指定的特定截面类型确定,如梁截面库中所述。温度和场变量作为壳截面每一层的 n 个等距点的值给出。所需值的数量 NSECPT 等于 n。
2023-07-09 19:31:11
826
1
原创 有限元非线性求解算法——Newton-Raphson
我一直都在分享笔记,是因为当前我也处于学习理论的状态,不过笔记较多,我分享的主要是之前一段时间的学习笔记,加上我当前的部分理解,重新整理呈现了出来。目前我在寻找损伤力学,断裂力学,张量分析,离散元等方面的优秀教材资料等,希望大家能分享给我,一起学习交流。。
2023-06-10 19:33:30
7170
1
原创 有限元分析—高斯积分与减缩积分
传统的高斯积分在每个单元上使用一组完整的高斯积分点,这可能会导致计算量过大,尤其是对于高阶元素或复杂几何形状的单元。如上图所示,高斯积分的结果与解析解几乎一致,减缩积分的误差略大,可见减缩积分的确会降低精度。具体而言,对于每个单元,将其内部积分区域划分为一系列高斯积分点,然后根据高斯积分点的权重和位置,对积分表达式进行数值近似。两种常见的积分方法是高斯积分和减缩积分。以平面应力问题为例,使用mathematical计算了四边形单元的刚度矩阵,对比了精确解,高斯积分解,减缩积分解的差异性。
2023-05-15 01:36:55
2123
1
原创 Abaqus子程序之UMAT
可用于定义材料的力学本构行为;建议在具有规定牵引(简单拉伸)载荷的单个元素模型上进行初始试验。将在材料定义包括用户定义的材料行为的元素的所有材料计算点调用;可用于包括力学行为的任何程序;可以使用依赖于求解的状态变量;对于力学本构模型,必须提供材料雅可比矩阵,C=(1/J)∂Δ(Jσ)/∂Δε可以与用户子程序USDFLD一起使用,以便于在任何场变量传入(uamt)之前重新定义它们;(1)所有情况都要定义的变量。
2023-05-09 00:13:33
9304
原创 Abaqus子程序之UFIELD
允许您在模型的节点处规定预定义的场变量——可以单独更新节点处的预定义场变量,或者可以同时更新节点处的多个场变量;l每当出现用户子程序定义的场变量时调用;l忽略直接指定的任何场变量的值;l可用于修改从结果文件中读取的场变量值;l可以与用户子程序 USDFLD 结合使用,这样可以修改从 UFIELD 传入并插值到材料点的场变量(这种更改是材料点值的变化,节点场变量值不受影响)。
2023-05-06 21:34:24
1360
原创 Abaqus子程序之Usdfld
允许您将材料点处的场变量定义为时间的函数或输出变量标识符表(使用 Abaqus/标准输出变量标识符)中列出的任何可用材料点数值的函数,用户定义的输出变量 UVARM 除外;可用于引入依赖于求解的材料属性,因为这些属性可以很容易地定义为场变量的函数;将在材料定义包含用户定义的场变量的单元的所有材料点调用;必须调用实用程序 GETVRM 来访问材料点数据;可以使用和更新状态变量;可以与用户子程序 UFIELD 结合使用来规定预定义的场变量。本文主要讨论:1. 软件界面设置2.更新场变量。
2023-05-06 21:27:22
5821
原创 有限元编程之杆单元
最近一段时间重新学习了下有限元分析,果然温故而知新,主要是加深了对有限元概念的理解。接下来我跟大家分享下近期用Mathematical编写的关于杆单元的有限元编程,主要包括形函数定义,单元刚度矩阵的求解与组装,最后求解节点位移等过程。最后分享下学习所得。
2023-04-29 22:52:45
818
原创 Abaqus2023来啦,新版本新功能
Abaqus具有强大的建模和后处理功能,可以支持多种CAD软件的数据导入和导出,同时也提供了丰富的材料模型和元素类型,可以满足各种工程应用的需求。新的材料模型:Abaqus 2023版本新增了多种新的材料模型,例如可变刚度材料模型、热塑性复合材料模型等,可以更好地模拟各种材料的行为。新的元素类型:Abaqus 2023版本新增了多种新的元素类型,例如可变形梁单元、可变形壳单元等,可以更好地模拟各种结构的变形和破坏。,我看了下,个人觉得讲的挺细,有软件界面的具体解释。更多详细的区别,大家可以看下这篇文章。
2023-04-19 10:32:44
1851
原创 Abaqus子程序之SDVINI
用户子程序定义的初始解相关状态变量场将被调用,以便在特定材料点、壳体截面点、接触次要节点或用户单元上进行计算(请参见“初始条件”)。最后给大家分享一个初始化解相关的状态变量,并在umat中更新的案例文件,公众号。解相关的状态变量按照它们在 SDVINI 中输入的顺序传递到这些程序中。用户定义的解相关的状态变量的数量(请参阅为解相关的状态变量分配空间)。对于任何没有定义初始条件的解相关的状态变量,返回零值。在其他用户子程序中使用解相关的状态变量。单元中的积分点编号(与用户单元无关)。第一个解相关的状态变量。
2023-04-16 00:13:05
1402
1
原创 Abaqus子程序之Vuhard子程序
它以大写字符串的形式传入。和要求相对于适当的独立变量(如应变、应变率和温度)定义屈服应力(或组合硬化模型中的屈服表面尺寸)的导数。fieldOld(nblock,nfieldv) : 增量开始时材料点处的用户定义的场变量的值。fieldNew(nblock,nfieldv) : 增量结束时材料点处的用户定义的场变量的值。材料定义包括用户自定义的各向同性硬化或金属塑性的循环硬化的单元的所有材料点将会调用这个子程序。Nprops : 用户定义材料属性的用户指定数量(cae界面输入的材料属性的数量)
2023-04-06 20:49:58
1719
4
原创 Abaqus二次开发之GETNODETOELEMCONN
此值对应于您的模型中自适应网格约束节点连接的元素的最大预期数量。GETNODETOELEMCONN将假定您的JELEMLIST和JELEMTYPE数组的长度为 NELEMS。(注意它与提供给程序的同名NELEMS的区别,我们传给程序一个假定值,程序返回一个精确值,用的相同名字)输出请求错误表示要求的变量不可用,或者您的 NELEMS 参数设置小于此节点处的元素连通性列表的长度。该数组中的条目数对应于 NELEMS 的返回值。描述 JELEMLIST 中每个元素条目相应的元素类型的元素类型标识符数组。
2023-04-06 20:48:01
547
3
原创 Abaqus二次开发之Fric子程序
NFDIR是摩擦力的方向分量个数)这些值作为摩擦应力分量的值传入,τα,并且必须更新为增量结束时的值。此外,子程序必须定义摩擦应力相对于γ1,γ2和p的派生(导数等),例如,在各向同性弹性粘附的情况下,∂τ1/∂γ1=∂τ2/∂γ2=kelas, ∂τ1/∂γ1=∂τ2/∂γ2=0 ,kelas是界面的弹性刚度。元素为 ∂Δτα/∂Δγβ 的数组,α方向的摩擦应力相对于β方向上的相对运动的偏导数,DDTDDG(1,1),DDTDDG(1,2),DDTDDG(2,1),DDTDDG(2,2)
2023-04-06 20:43:55
1640
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人