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

ANSYS四点雨流计数法

! ==============================
! 四点雨流计数法 ANSYS命令流

! 1. 清除旧数据,初始化工作环境
/CLEAR,START
/FILNAME,RAINFLOW_4POINT ! 工作文件名
/TITLE,Four-Point Rainflow Counting Method ! 标题

! 2. 定义参数(根据载荷谱修改)
*DIM,LOAD,TABLE,1000,1,,TIME ! 定义载荷表:1000行(可改),载荷-时间
*DIM,COUNT_AMP,ARRAY,500,1 ! 存储循环幅值
*DIM,COUNT_MEAN,ARRAY,500,1 ! 存储循环均值
*DIM,COUNT_CYC,ARRAY,500,1 ! 存储循环周期
N_LOAD = 1000 ! 载荷数据总点数(必须与LOAD表行数一致)
N_COUNT = 0 ! 雨流计数结果总数(初始0)

! 3. 导入/定义载荷时间历程(替换为真实载荷数据)
! 示例:正弦载荷谱
*DO,I,1,N_LOAD
TIME = (I-1)*0.1 ! 时间步长0.1s
LOAD(I,1) = 100*SIN(TIME) + 50*COS(0.5*TIME) ! 载荷值
*ENDDO

! 4. 四点雨流计数法
! 四点定义:X1-X2-X3-X4 连续4个载荷点
*DIM,SEQ,ARRAY,2000,1 ! 峰值谷值序列存储数组
N_SEQ = 0 ! 峰值谷值序列长度

! 第一步:提取原始载荷的峰值/谷值(提取极值点)
N_SEQ = 1
SEQ(N_SEQ) = LOAD(1,1)
*DO,I,2,N_LOAD-1
! 判断当前点是否为峰值或谷值
IF (LOAD(I,1) > LOAD(I-1,1) AND LOAD(I,1) > LOAD(I+1,1)) THEN
N_SEQ = N_SEQ + 1
SEQ(N_SEQ) = LOAD(I,1)
ELSE IF (LOAD(I,1) < LOAD(I-1,1) AND LOAD(I,1) < LOAD(I+1,1)) THEN
N_SEQ = N_SEQ + 1
SEQ(N_SEQ) = LOAD(I,1)
ENDIF
*ENDDO
N_SEQ = N_SEQ + 1
SEQ(N_SEQ) = LOAD(N_LOAD,1) ! 加入最后一个点

! 第二步:四点雨流计数核心循环
*DIM,RESIDUE,ARRAY,2000,1 ! 剩余载荷序列
N_RES = 0 ! 剩余序列长度
*DO,I,1,N_SEQ
N_RES = N_RES + 1
RESIDUE(N_RES) = SEQ(I) ! 将极值点加入剩余序列

! 当剩余序列≥4个点时,执行四点判断
*WHILE,N_RES >= 4
! 提取最后4个点:Y1 Y2 Y3 Y4
Y1 = RESIDUE(N_RES-3)
Y2 = RESIDUE(N_RES-2)
Y3 = RESIDUE(N_RES-1)
Y4 = RESIDUE(N_RES)

! 四点雨流规则:
! 1. 计算X2-X3幅值、X1-X4幅值
A23 = ABS(Y2-Y3)
A14 = ABS(Y1-Y4)

! 2. 核心判定:X2-X3 ≤ X1-X4 → 提取一个完整循环
IF (A23 <= A14) THEN
N_COUNT = N_COUNT + 1
! 计算循环幅值、均值、周期
COUNT_AMP(N_COUNT) = A23/2 ! 循环幅值
COUNT_MEAN(N_COUNT) = (Y2+Y3)/2 ! 循环均值
COUNT_CYC(N_COUNT) = 1 ! 循环计数(1次)

! 移除Y2、Y3,更新剩余序列
RESIDUE(N_RES-2) = RESIDUE(N_RES)
N_RES = N_RES - 2
ELSE
EXIT ! 不满足条件,退出循环
ENDIF
*ENDDO
*ENDDO

! 5. 输出雨流计数结果
*CFOPEN,RAINFLOW_RESULT,TXT ! 打开结果文件
*VWRITE,N_COUNT
(' 雨流计数总循环数:',I6)
*VWRITE,COUNT_AMP(1),COUNT_MEAN(1),COUNT_CYC(1)
(' 循环幅值 循环均值 循环次数')
*DO,I,1,N_COUNT
*VWRITE,COUNT_AMP(I),COUNT_MEAN(I),COUNT_CYC(I)
(F10.2,F10.2,F6.0)
*ENDDO
*CFCLOSE

! 6. 结果可视化
/Graphics,Full
*DIM,PLOT_DATA,TABLE,N_COUNT,3,,CYCLE
*DO,I,1,N_COUNT
PLOT_DATA(I,1) = COUNT_AMP(I)
PLOT_DATA(I,2) = COUNT_MEAN(I)
PLOT_DATA(I,3) = COUNT_CYC(I)
*ENDDO
/VPLO,PLOT_DATA(1,1),PLOT_DATA(1,2) ! 幅值-均值散点图
/REPLOT

http://www.jsqmd.com/news/777392/

相关文章:

  • 2026年柴油机火花熄灭器生产厂家深度测评:如何为高危场景匹配最佳方案? - 速递信息
  • centos 7 安装图形化
  • 新粗野主义React组件库:设计系统与前端工程实践
  • 一物一码数字化全链路领域供应商选择建议:多维度做客观深度解析 - 易全一物一码提供商
  • Chrome 安全机制深度解析
  • 课程论文写不出来?宏智树AI教你5分钟理清思路,告别“期末熬夜综合征”
  • Proteus 8.13 + Keil C51 联调:手把手教你用 AT89C52 驱动 AT24C02 并显示到 LCD1602
  • 告别无限配网!用ESP32+Arduino实现一键切换的智能配网方案(附完整代码)
  • 3分钟搭建Python大麦网抢票神器:告别手速拼抢的时代
  • 三部最经典的营销管理书籍推荐
  • 如何用ncmdumpGUI轻松解锁网易云音乐NCM文件:Windows用户的完整指南
  • 微信小程序逆向工程:wxappUnpacker完整指南与安全分析实战
  • YOLOv13最新创新改进系列:融入AKConv(可改变核卷积),加强特征提取,任意数量的参数和任意采样形状,为网络开销和性能之间的权衡提供了更丰富的选择。 拉升检测性能!
  • 2026年4月酒店名称,西双版纳酒店/民宿/酒店/西双版纳民宿/西双版纳住宿/住宿,酒店预订 - 品牌推荐师
  • BilibiliCacheVideoMerge:三步告别缓存碎片,安卓端B站视频完美合并指南
  • 国产测厚仪行业格局解析,吉恩斯高精度镀层检测仪器推荐 - 品牌推荐大师1
  • AD9361的LVDS模式不止传数据:深度挖掘CTRL_IN/OUT引脚在TDD系统中的妙用
  • 模拟电路设计:超低功耗定时发声器原理与复刻实践
  • RT-DTER最新创新改进系列:融合YOLOv9下采样机制ADown,强强联合!扩大YOLOv13网络模型感受野,降低过拟合,让小目标无处可遁!检测精度再提新高!!
  • 深度解析常见网络配置故障与底层排错逻辑
  • 国产恶臭监测仪替代进口首选,西原环保实力优势拆解 - 品牌推荐大师1
  • PardusBot:基于AI Agent的智能定时任务与数据抓取自动化工具
  • 告别龟速:如何用开源插件将GitHub下载速度提升100倍?
  • 15、世界杯—把两个Excel的内容放在一个新Excel里面
  • 2026年5月新消息:杭州地区商用中央空调优选服务商深度解析,杭州鸿鹄环境获评实力之选 - 2026年企业推荐榜
  • 2026巴厘岛目的地婚礼深度评测:全国三强中国新人去巴厘岛办目的地婚礼,哪家品牌海外服务最靠谱?跨境服务力深度测评 - charlieruizvin
  • Spring Boot项目实战:5分钟搞定腾讯云短信验证码登录(附完整Java代码与Redis缓存方案)
  • Beyond Compare 5密钥生成终极指南:3种方法轻松解决软件授权问题
  • 如何通过Fast-GitHub浏览器插件实现10倍GitHub下载速度优化
  • 终极PvZ Toolkit完整指南:重新定义植物大战僵尸修改体验