当前位置: 首页 > news >正文

sfe_py的应力云图计算与显示step by step

1.依赖环境

首先是相关环境的安装,如果你使用wsl模式的linux环境,你还是趁此机会给ubuntu装个虚拟显示器。相关的一系列安装动作:

  1. pip install sfepy
    1. 如果你安装的是2025.2版,你需要:
    2. pip install jax
      1. 这是sfe_py矩阵运算的数学库依赖
      2. 大概率是numpy的速度不够快
  2. sudo apt update && sudo apt install libgl1-mesa-glx x11-apps -y
    1. 如果你使用了ubuntu 22.4以上的版本:
      1. sudo apt update && sudo apt install libglx-mesa0 x11-apps -y
  3. echo "export DISPLAY=$(grep nameserver /etc/resolv.conf | awk '{print $2}'):0.0" >> ~/.bashrc
    source ~/.bashrc
  4. windows环境安装:
    1. vcxsrv-64.1.20.14.0.installer.exe

2. 例程

代码不建议上来徒手做.mesh文件建模,可以先跑一下系统自带的例程:

比如:

sfepy-run ./mixed_mesh.py

     ...................... .mixed_mesh.py 在sfepy的安装目录,如果你的python启用了.venv,它位置很好找:

find .venv -name "mixed_mesh.py"

sfepy-view beam_h* -f u:s0:wu:e:p0 u:s1:wu:e:p0

............................显示生成的.vtk文件

例程里的beam:

 

  • 这个还没有仔细校对参数,应该是匀质梁的单端固定的效果。 
  • 接下来可以先从改变外力,叠加外部载荷开始。

附录A 原始文档,例程位置

SfePy: Simple Finite Elements in Python — SfePy version: 2025.2+git.e2f7d954 documentation

有一篇关于mesh的文可能会用到:

mesh算法进化如何实现?这里是成功实例......_几何_三角形_数量

它给出了更少点数,更好的效果的一种实施例。

附录B 关于测点位置与剪力滞 

实际埋点时,剪力滞的问题可能会影响误差,目前已知的解决方案是,把传感器放置在腹板,而不是上下翼板,避开这个问题。 

附录C .mesh文件的格式

  • Dimension 3 定义了这是一个3维结构
  • Vertices是点,每个点因为是3维,所以有3个点,第4列是点类目标的标记。
  • Hexahedra是六面体,由8个点组成,最后一列是类型标记,1.
  • Tetrahedra是三棱锥,也就是4面体,由4个点组成,最后一列是类型标记,2.
  • 六面体,三棱锥中的坐标都是顶点坐标,Vertices.单独的点没有意义。只能在纳入一个结构中才有意义。

MeshVersionFormatted 2
Dimension 3

Vertices
32
0.0000000000000000e+00 0.0000000000000000e+00 0.0000000000000000e+00 0
0.0000000000000000e+00 1.0000000000000001e-01 0.0000000000000000e+00 0
0.0000000000000000e+00 1.0000000000000001e-01 1.0000000000000001e-01 0
0.0000000000000000e+00 0.0000000000000000e+00 1.0000000000000001e-01 0
1.0000000000000001e-01 0.0000000000000000e+00 0.0000000000000000e+00 0
1.0000000000000001e-01 1.0000000000000001e-01 0.0000000000000000e+00 0
1.0000000000000001e-01 1.0000000000000001e-01 1.0000000000000001e-01 0
1.0000000000000001e-01 0.0000000000000000e+00 1.0000000000000001e-01 0
2.0000000000000001e-01 0.0000000000000000e+00 0.0000000000000000e+00 0
2.0000000000000001e-01 1.0000000000000001e-01 0.0000000000000000e+00 0
2.0000000000000001e-01 1.0000000000000001e-01 1.0000000000000001e-01 0
2.0000000000000001e-01 0.0000000000000000e+00 1.0000000000000001e-01 0
2.9999999999999999e-01 0.0000000000000000e+00 0.0000000000000000e+00 0
2.9999999999999999e-01 1.0000000000000001e-01 0.0000000000000000e+00 0
2.9999999999999999e-01 1.0000000000000001e-01 1.0000000000000001e-01 0
2.9999999999999999e-01 0.0000000000000000e+00 1.0000000000000001e-01 0
4.0000000000000002e-01 0.0000000000000000e+00 0.0000000000000000e+00 0
4.0000000000000002e-01 1.0000000000000001e-01 0.0000000000000000e+00 0
4.0000000000000002e-01 1.0000000000000001e-01 1.0000000000000001e-01 0
4.0000000000000002e-01 0.0000000000000000e+00 1.0000000000000001e-01 0
5.0000000000000000e-01 0.0000000000000000e+00 0.0000000000000000e+00 0
5.0000000000000000e-01 1.0000000000000001e-01 0.0000000000000000e+00 0
5.0000000000000000e-01 1.0000000000000001e-01 1.0000000000000001e-01 0
5.0000000000000000e-01 0.0000000000000000e+00 1.0000000000000001e-01 0
5.9999999999999998e-01 0.0000000000000000e+00 0.0000000000000000e+00 0
5.9999999999999998e-01 1.0000000000000001e-01 0.0000000000000000e+00 0
5.9999999999999998e-01 1.0000000000000001e-01 1.0000000000000001e-01 0
5.9999999999999998e-01 0.0000000000000000e+00 1.0000000000000001e-01 0
6.9999999999999996e-01 0.0000000000000000e+00 0.0000000000000000e+00 0
6.9999999999999996e-01 1.0000000000000001e-01 0.0000000000000000e+00 0
6.9999999999999996e-01 1.0000000000000001e-01 1.0000000000000001e-01 0
6.9999999999999996e-01 0.0000000000000000e+00 1.0000000000000001e-01 0

Hexahedra
5
1 2 3 4 5 6 7 8 1
5 6 7 8 9 10 11 12 1
9 10 11 12 13 14 15 16 1
13 14 15 16 17 18 19 20 1
21 22 23 24 25 26 27 28 1

Tetrahedra
12
17 18 21 20 2
18 24 21 20 2
18 22 21 24 2
18 19 22 20 2
19 24 22 20 2
19 23 22 24 2
25 26 29 28 2
26 32 29 28 2
26 30 29 32 2
26 27 30 28 2
27 32 30 28 2
27 31 30 32 2

End
 

http://www.xdnf.cn/news/1119511.html

相关文章:

  • 【LeetCode240.搜索二维矩阵Ⅱ】以及变式
  • iOS高级开发工程师面试——RunLoop
  • C++类模版与友元
  • 大数据领域开山鼻祖组件Hadoop核心架构设计
  • 50天50个小项目 (Vue3 + Tailwindcss V4) ✨ | GithubProfies(GitHub 个人资料)
  • 编译器 VS 解释器
  • 电脑升级Experience
  • Linux操作系统之信号:信号的产生
  • 【C++进阶】---- 多态
  • 鹧鸪云:别墅光储项目方案设计的最终选择
  • 【Linux系统】进程切换 | 进程调度——O(1)调度队列
  • Linux:3_基础开发⼯具
  • 【Linux】基本指令详解(一) 树状文件结构、家目录、绝对/相对路径、linux文件类型
  • 使用systemctl命令控制软件的启动和关闭
  • 打破空间边界!Nas-Cab用模块化设计重构个人存储逻辑
  • 各种开发语言主要语法对比
  • Codeforces Round 1019 (Div. 2) A-D
  • GPU网络运维
  • UV vs Pip:Python 包管理的革命性进化
  • 【安卓笔记】进程和线程的基础知识
  • 实现高效、可靠的基于骨骼的人体姿态建模(第二章 基于三维人体姿态回归的语义图卷积网络)
  • 马蹄集 BD202401补给
  • Elasticsearch 9.x 升级变化
  • Swift 解 LeetCode 326:两种方法判断是否是 3 的幂,含循环与数学技巧
  • APK安装器(安卓端)一键解除VX限制!轻松安装各种手机应用
  • 一键获取android公钥/ios公钥工具
  • Java面试总结(经典题)(Java多线程)(一)
  • 基于Hadoop的竞赛网站日志数据分析与可视化(上)
  • 八、nginx搭建,实现vue跳转nginx跳转gateway
  • 基于hadoop的竞赛网站日志数据分析与可视化(下)