ANSYS APDL中使用SF和SFFUN命令,对不同节点施加不同大小的面载荷

2024-06-09 13:04

本文主要是介绍ANSYS APDL中使用SF和SFFUN命令,对不同节点施加不同大小的面载荷,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

SF命令通常是对 所选择的节点集合 施加同样大小的载荷,如:

NSEL, S, LOC, Y, 5                    ! 选择y坐标值为5的全部结点
SF, ALL, PRES, 1                      ! 施加均布荷载

完整命令流: 

Finish					!退出当前处理器
/Clear,all				!清除所有
!开大写无法粘贴到命令行窗口里面
/UNITS, USER, MM
!units:N,mm,t!创建几何
/Prep7					!访问前处理器
Block,0,60,-5,5,-3,3	!创建六面体
/View,,1,1,1			!设置视图
Vplot					!Plot volumes!定义属性
ET, 1, SOLID185			!定义单元类型
MP, EX, 1, 2E11			!定义弹性模量
MP, NUXY, 1, 0.3		!定义泊松比!网格划分
TYPE, 1                               ! 激活单元类型号1
MAT, 1                                ! 激活材料号1
ESIZE, 3                              ! 单元尺寸设置为3
VMESH, ALL                            ! 执行分网
EPLOT                                 ! Plot Elements
FINISH                                ! 退出当前处理器!设置边界条件
/SOLU                                 ! 访问求解器
NSEL, S, LOC, X, 0                    ! 选择x坐标值为0的全部结点
D, ALL, ALL, 0                        ! 指定边界条件为固定约束
ALLSEL,ALL                            ! 全选!施加均布载荷
NSEL, S, LOC, Y, 5                    ! 选择y坐标值为5的全部结点
SF, ALL, PRES, 1                      ! 施加均布荷载ALLSEL,ALL                            ! 全选!施加集中载荷
N1 = NODE(60,-5,-3)                   ! 获取坐标值为(60,-5,-3)的结点编号
N2 = NODE(60,-5,3)                    ! 获取坐标值为(60,-5,3)的结点编号
F, N1, FY, -50                        ! 施加集中荷载
F, N2, FY, -50                        ! 施加集中荷载
ALLSEL,ALL                            ! 全选
EPLOT                                 ! Plot Elements!求解
ANTYPE,STATIC                         ! 设置分析类型为静力分析
SOLVE                                 ! 提交求解器进行求解FINISH                                ! 退出当前处理器

由于SF命令无法对单个节点使用,想要对不同节点施加不同大小的PRES载荷时就无法采用这种简单的先选择目标节点,再施加载荷的形式。

可采用SFFUN命令定义节点号和面荷载的函数关系,实现对不同节点施加不同大小的SF载荷。

首先要定义一个数组,数组中的值的位置(数组下标)表示节点号数组值表示荷载的大小

如下面的命令流中, nodepres数组中的数组下标从1-100表示节点号,每个节点的载荷大小为节点号乘以10。

定义完数组后,使用SFFUN命令流定义节点号和面荷载的函数关系:sffun,pres,nodepres(1)。

随后使用SF命令施加载荷:

sf,all,pres,0表示按照数组下标—数组值施加(该面荷载节点上的值为i*10,i表示节点号),

sf,all,pres,10表示在数组值的基础上加10(该面荷载节点上的值为10+i*10,i表示节点号)。

完整命令流: 

Finish					!退出当前处理器
/Clear,all				!清除所有
!开大写无法粘贴到命令行窗口里面
/UNITS, USER, MM
!units:N,mm,t!创建几何
/Prep7					!访问前处理器
Block,0,60,-5,5,-3,3	!创建六面体
/View,,1,1,1			!设置视图
Vplot					!Plot volumes!定义属性
ET, 1, SOLID185			!定义单元类型
MP, EX, 1, 2E11			!定义弹性模量
MP, NUXY, 1, 0.3		!定义泊松比!网格划分
TYPE, 1                               ! 激活单元类型号1
MAT, 1                                ! 激活材料号1
ESIZE, 3                              ! 单元尺寸设置为3
VMESH, ALL                            ! 执行分网
EPLOT                                 ! Plot Elements
FINISH                                ! 退出当前处理器*dim,nodepres,,100		! 定义数组nodepres*do,i,1,100
nodepres(i)=i*10.0 		! 为数组赋值
*enddosffun,pres,nodepres(1) 	! 定于节点号与面荷载函数关系
nsel,s,loc,y,5			! 选择节点群
sf,all,pres,10
sflist					! 面荷载列表(该面荷载节点上的值为10+i*10)
*do,i,1,100
nodepres(i)=i*50.0
*enddo
nsel,s,loc,z,3
sf,all,pres,0
allsel
sflist

官方例子:

*dim,nodepres,array,2
nodepres(1)=11,12
/prep7
et,1,42
n,1
n,2,1
n,3,1,1
n,4,,1
e,1,2,3,4
sfe,1,1,pres,1,3
sfelist ! expected answer: 3 at both nodes 1 and 2 
sfedel,all,pres,all
sffun,pres, nodepres(1)
sfe,1,1,pres,1,5
sfelist ! expected answer: 5+11=16 at node 1, 5+12=17 at node 2
finish

注意:必须为每个数组参数向量定义起始数组元素编号——如果想要对节点号为10-100的节点施加载荷,定义的数组仍然需要从1到100,只是对数组中1-9的元素没有赋值而已(载荷值默认为0),如下:

*do,i,10,100
nodepres(i)=i*10.0         ! 为数组赋值
*enddo

参考:

【ANSYS命令流】加载与求解技术(四):面载荷(节点)的施加 [重点]_ansys建立简支梁模型节点施加荷载-CSDN博客

SFUN --- SFFUN (ansys.com)

这篇关于ANSYS APDL中使用SF和SFFUN命令,对不同节点施加不同大小的面载荷的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1045249

相关文章

Java中的Cursor使用详解

《Java中的Cursor使用详解》本文介绍了Java中的Cursor接口及其在大数据集处理中的优势,包括逐行读取、分页处理、流控制、动态改变查询、并发控制和减少网络流量等,感兴趣的朋友一起看看吧... 最近看代码,有一段代码涉及到Cursor,感觉写法挺有意思的。注意是Cursor,而不是Consumer

linux打包解压命令方式

《linux打包解压命令方式》文章介绍了Linux系统中常用的打包和解压命令,包括tar和zip,使用tar命令可以创建和解压tar格式的归档文件,使用zip命令可以创建和解压zip格式的压缩文件,每... 目录Lijavascriptnux 打包和解压命令打包命令解压命令总结linux 打包和解压命令打

Node.js net模块的使用示例

《Node.jsnet模块的使用示例》本文主要介绍了Node.jsnet模块的使用示例,net模块支持TCP通信,处理TCP连接和数据传输,具有一定的参考价值,感兴趣的可以了解一下... 目录简介引入 net 模块核心概念TCP (传输控制协议)Socket服务器TCP 服务器创建基本服务器服务器配置选项服

如何使用CSS3实现波浪式图片墙

《如何使用CSS3实现波浪式图片墙》:本文主要介绍了如何使用CSS3的transform属性和动画技巧实现波浪式图片墙,通过设置图片的垂直偏移量,并使用动画使其周期性地改变位置,可以创建出动态且具有波浪效果的图片墙,同时,还强调了响应式设计的重要性,以确保图片墙在不同设备上都能良好显示,详细内容请阅读本文,希望能对你有所帮助...

Rust中的注释使用解读

《Rust中的注释使用解读》本文介绍了Rust中的行注释、块注释和文档注释的使用方法,通过示例展示了如何在实际代码中应用这些注释,以提高代码的可读性和可维护性... 目录Rust 中的注释使用指南1. 行注释示例:行注释2. 块注释示例:块注释3. 文档注释示例:文档注释4. 综合示例总结Rust 中的注释

Linux使用cut进行文本提取的操作方法

《Linux使用cut进行文本提取的操作方法》Linux中的cut命令是一个命令行实用程序,用于从文件或标准输入中提取文本行的部分,本文给大家介绍了Linux使用cut进行文本提取的操作方法,文中有详... 目录简介基础语法常用选项范围选择示例用法-f:字段选择-d:分隔符-c:字符选择-b:字节选择--c

使用Go语言开发一个命令行文件管理工具

《使用Go语言开发一个命令行文件管理工具》这篇文章主要为大家详细介绍了如何使用Go语言开发一款命令行文件管理工具,支持批量重命名,删除,创建,移动文件,需要的小伙伴可以了解下... 目录一、工具功能一览二、核心代码解析1. 主程序结构2. 批量重命名3. 批量删除4. 创建文件/目录5. 批量移动三、如何安

springboot的调度服务与异步服务使用详解

《springboot的调度服务与异步服务使用详解》本文主要介绍了Java的ScheduledExecutorService接口和SpringBoot中如何使用调度线程池,包括核心参数、创建方式、自定... 目录1.调度服务1.1.JDK之ScheduledExecutorService1.2.spring

Java使用Tesseract-OCR实战教程

《Java使用Tesseract-OCR实战教程》本文介绍了如何在Java中使用Tesseract-OCR进行文本提取,包括Tesseract-OCR的安装、中文训练库的配置、依赖库的引入以及具体的代... 目录Java使用Tesseract-OCRTesseract-OCR安装配置中文训练库引入依赖代码实

Python使用Pandas对比两列数据取最大值的五种方法

《Python使用Pandas对比两列数据取最大值的五种方法》本文主要介绍使用Pandas对比两列数据取最大值的五种方法,包括使用max方法、apply方法结合lambda函数、函数、clip方法、w... 目录引言一、使用max方法二、使用apply方法结合lambda函数三、使用np.maximum函数