Skip to content

ZeshuLiu/J_FEM

Repository files navigation

代码源文件均在src中
示例程序可以在Script.py中找到,可以按需要更改值来求解不同问题,此处示例可以用来求解习题2.12的等效问题
示例Script_5_1可以用来求解例5.1的等效问题


输入单位必须统一比如采用 米 千克 秒 帕斯卡 这种单位运算可以自洽的组合。
!!!!中途显示的窗口需要关掉才能运行!!!!

测试平台:
    cpu:r5 3600
    gpu:rx590
    mem:32Gb @3200Mhz
    win11 22H2
    Python 3.10.3 64-bit

已知问题&性能:
    节点数多时matplot画不出来,大致在500节点量级
    240万节自由度计算需时100秒左右,内存占用1.8Gb
    960万自由度计算需时364秒,内存占用7.0Gb


目前功能:
    定义节点    1.必须为[x,y,z]三个维度
		2. 可以同时定义一个在xyz方向上等距递增的n个节点

    定义3节点三角形单元 1.单元会被定义在平面上,此时节点坐标中仅有x,y起作用,z轴并不起作用,也不会自动更改平面使得单元位与平面上
                        2. 定义时传入参数为节点的编号,以及现有节点的编组(是一个class,这个class中存有所有的节点),以及由材料信息组成的字典

    求解器: 1.可以自动生成整体刚度矩阵等所需参数
            2. 定义时需要传入节点的编组(是一个class,这个class中存有所有的节点),以及包含所有单元的列表
            3. 求解器能够自动求解问题,并且包含一个可以获得节点位移的后处理程序。
	
	后处理  1.可以求解某一个特定单元的u、v方向位移
            2. 显示变形前后的对比图
    

尚未完善:
    3D仿真功能
        3D网格划分
        3D模型导入
        3D变形显示
    自动网格划分(划分单元)

    

已经完善:
    3D仿真功能
        3D节点绘制
        3D求解
    单元应力、应变优化求解方法。不用G矩阵
    稀疏矩阵存储优化
    采用直接选点放入的方法计算整体刚度矩阵
    

About

FemUsingPython

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages