hypermesh新手求助一个问题
分析一根梁,截面为10×20,长度1000,梁的两端约束,中间受力,由stp格式导入的,以solid单元进行分析,我在property的Cardimage选择的是PSOLID选项,然后出现如下错误提示:There were 604 error messages during input processing.
The first message is repeated below:
*** See next message about line 644 from file:
D:/Hyperwork-Opstitruct/B2beam/B2beam.fem
"CQUAD4 1 0 4 5 2 3"
*** ERROR # 1000 *** in the input data:
Incorrect data in field # 3. Field 'PID' of CQUAD4 bulk data.
这个更改是从哪里着手?没找对地方,谢谢! 第 3 个字段就是 CQUAD4 卡中的 PID(Property ID)。
也就是说:你的模型里出现了 CQUAD4 单元,却引用了一个并不存在的属性(PID),或者这个 PID 指向的属性卡不是 CQUAD4 应该用的壳属性(比如 PSHELL),而是你给实体单元建的 PSOLID。为什么会出现 CQUAD4?
你虽然“只想做实体分析”,但导入的 STEP 文件里 可能把某些面(例如梁的外表面)也离散成了 2D 壳网格,或者你在 HyperMesh 里无意中生成了壳单元。于是求解器在读到这些 CQUAD4 时,找不到对应的 PSHELL 就报错。
回到 HyperMesh按 F2 → 选 Elements → 只显示 2D 单元(壳)。如果确实不需要壳,就把它们全部删除(delete)。如果确实需要壳,则:
– 新建一个 Property,Card Image 选 PSHELL,给定厚度;
– 用 Tool → Organize 或 Component Manager 把壳单元放到这个 PSHELL 里。2. 确认剩下的只有 3D 实体单元(TET4/TET10 或 HEX8/HEX20 等),并且它们都指向 PSOLID 属性。3. 重新导出 .fem 并提交计算
学者11 发表于 2025-8-27 07:31
第 3 个字段就是 CQUAD4 卡中的 PID(Property ID)。
也就是说:你的模型里出现了 CQUAD4 单元,却引用了 ...
那我后面导入外来模型时,只是把SolidWorks的实体导入,而不导入step,这种问题是否可以规避?谢谢!
学者11 发表于 2025-8-27 07:31
第 3 个字段就是 CQUAD4 卡中的 PID(Property ID)。
也就是说:你的模型里出现了 CQUAD4 单元,却引用了 ...
如果我既想保存psolid与pshell,那在property里能同时体现还是再另外新建一个pshell的?谢谢
本帖最后由 天涯晴天 于 2025-8-27 22:29 编辑
学者11 发表于 2025-8-27 07:31
第 3 个字段就是 CQUAD4 卡中的 PID(Property ID)。
也就是说:你的模型里出现了 CQUAD4 单元,却引用了 ...
试验了,还是不行,我是按照你的第一个方法,显示只有这一个模型,软件没有识别到曲面
是不是我操作有误?
我还新建一个component,我看教程上,他是新建的,因为它不是外来模型,那我这个外来模型还要不要新建component?
这个hypermesh与ansys相比真是不太适应,特别是这些单元,壳体的这些管理与处理上
天涯晴天 发表于 2025-8-27 09:30
那我后面导入外来模型时,只是把SolidWorks的实体导入,而不导入step,这种问题是否可以规避?谢谢!
...
不能。
这次出错的关键并不是“STEP 格式本身有问题”,而是 HyperMesh 在导入任何几何(STEP、Parasolid、IGES、SolidWorks 原生文件……)时,如果后续网格控制不当,都可能在表面上自动(或被你无意中)生成 2D 壳网格。这些壳单元被保留下来以后,就会去找对应的 PSHELL,于是触发同样的 #1000 错误。
换成 SolidWorks 的 *.sldprt / *.sldasm 直接读,只是把几何来源从 STEP 换成了 Parasolid,HyperMesh 的导入流程并没有本质区别,仍旧可能产生壳单元。
真正想“规避”的方法只有两条:1. 导入后 主动检查并删除不需要的 2D 单元(F2 → 2D → delete)。2. 或者在 Automesh/Volume mesh 之前,把对应的 surface component 关掉,只保留 solid 几何,再做 3D 实体网格。
天涯晴天 发表于 2025-8-27 10:15
如果我既想保存psolid与pshell,那在property里能同时体现还是再另外新建一个pshell的?谢谢
...
必须 再新建一个独立的 PSHELL property,而不能指望把 PSHELL 和 PSOLID 写进同一张 property 卡里。PSOLID 只能给实体单元(CHEXA、CTETRA 等)用;PSHELL 只能给壳单元(CQUAD4、CTRIA3 等)用;一张 property 只能选一种 Card Image(PSOLID 或 PSHELL)。
保留现有的 PSOLID(实体单元用它)。2. 再新建第二个 property,Card Image 选 PSHELL,填写厚度等参数。3. 用 Component Manager 或 Organize 把壳单元全部指到新的 PSHELL property。
天涯晴天 发表于 2025-8-27 21:01
试验了,还是不行,我是按照你的第一个方法,显示只有这一个模型,软件没有识别到曲面
是不是我操作有误 ...
概念映射(ANSYS ↔ HyperMesh) • ANSYS 的 Section ↔ HyperMesh 的 Property(PSHELL/PSOLID)
• ANSYS 的 Element Type ↔ HyperMesh 的 Element Config(CQUAD4、CTETRA…)
• ANSYS 直接给面/体赋 Section;HyperMesh 必须先把几何或网格 放进 Component → 再给 Component 指定 Property。
→ 所以 HyperMesh 里“壳厚度”不在壳单元上,而在 PSHELL 卡 里;PSHELL 又挂在 Component 上。
任何时候想看“壳厚度”→ 直接看 Component 对应的 PSHELL,而不是单元本身。
壳/实体混用模型,一定用颜色把 Component 区分开,一眼就能看出有没有混。
在 ANSYS 里,壳厚度是“贴在单元/面上”的属性;在 HyperMesh 里,它是“挂在 Component 上的 PSHELL 卡”。把“Component=ANSYS 的几何集合+单元集合+截面”这个关系想通了,壳体管理就顺了。
我再试试吧!多谢!
页:
[1]