作者:水哥ANSYS,获授权转载

一、概述

有过其他编程语言经验的同学都知道,流程控制类语言命令在编程中是必须掌握的一门技巧,这类命令能大幅提高我们的编程效率,增加程序可读性。类似地,在APDL中也有很多的流程控制性命令,今天水哥就给大家捋一捋。

二、什么是流程类控制命令

ANSYS总是逐条执行命令语句的,但很多时候我们建模或者计算分析需要不断的重复执行一些模块化命令,例如在地震时程分析、荷载步加载等,因而就诞生了流程类控制命令,ANSYS常见的命令如下:

1)*Go 无条件分支

2)*IF --*IF ELSE--*ELSE--*ENDIF 有条件分支

3)*DO --*ENDDO 循环

4)*DO WHILE 循环

5)*REPEAT 重复一个命令,增加一个或多个命令

这上面五个命令中,*IF条件判断、*DO循环是使用频率最高的,任何稍微复杂点的建模或者后处理均需要用到。下面分别简单介绍下每个命令的使用方式。

三、详解

1、*Go 无条件分支

*Go是最简单的分支命令,是用来将程序流程转移到指定标识字所在行并执行后面的流程,也即跳过中间的所有命令,但值得注意的是该命令不能与条件分支和循环混合使用,其优先级低于循环和条件分支,个人不推荐使用这个命令。

案例:

*go,:BYST1 !流程跳转到后面的第一个写有:BYST1命令行

…….

:BYST1 !跳转目标行

*GO,STOP !退出程序

2、*IF --*IF ELSE--*ELSE--*ENDIF 有条件分支

这个命令是我们在建模或者后处理中使用最为频繁的流程控制命令之一,应重点掌握,该命令通过比较两个数值的大小来确定是否满足当前的判断条件,从而决定是否执行后续的命令,格式如下:

*IF,VAL1,Oper1,VAL2,Base1

Oper1 是比较运算的,ANSYS提供如下比较运算符:

1)EQ: 等于 ; 2)NE:不等于;3)LT:小于;4)GT 大于;5)LE不大于;6)GE 不小于;7)ABLT 绝对值小于;8)ABGT 绝对值大于。

VAL1为比较数,VLA2为被比较数,Base1为当判定条件为真时所执行的操作。将Base1换为*Else就成为了一个标准的判断性流程控制语句。流程图如下:

例如:

Finish$/clear

/prep7

XX1=1 !给XX1赋值为1

*if,xx1,gt,2,then !判断XX1是否大于2,如果大于2,则绘制一个矩形,否则画一个圆

Blc4,0,0,4,2

*else

Cyl4,0,0,5

*endif

3、*DO—*ENDDO 循环

*do循环和*if一样,也是我们平时所使用命令中最为频繁的控制性语句之一,*do循环其实本身是一个程序块,合理的利用*do循环,有时候能大幅度提高我们的建模效率,尤其是和数组的结合使用,例如在网壳模型建模过程中,*do循环的使用就能事半功倍。

*do循环格式如下:

*DO,par,ival,fval,inc

其中par为循环控制变量,ival,fval,inc分别为循环控制变量的起始值、终点值以及间隔值。

实例:

点击完整阅读全文

细数APDL中的流程控制命令

相关阅读推荐:

如何看待新手入门学习APDL过程中的是是非非

APDL语言简介(一)

ANSYS APDL中*Vwrite 使用命令方法介绍

细数APDL中的流程控制命令相关推荐

  1. 细数T-BOX中TI的明星产品之 线性稳压器 | 第五节TPS7B7701-Q1:为车载应用保驾护航

    汽车新热点:细数T-BOX中TI的明星产品(进行中) Interface PHY 第一节     DP83TC811S-Q1:车载以太网让您的T-BOX如虎添翼 CAN 第二节   TCAN1042- ...

  2. mysql数据库语句分类_细数MySQL中SQL语句的分类

    1:数据定义语言(DDL) 用于创建.修改.和删除数据库内的数据结构,如:1:创建和删除数据库(CREATE DATABASE || DROP  DATABASE):2:创建.修改.重命名.删除表(C ...

  3. php反序列化java.long_细数java中Long与Integer比较容易犯的错误总结

    今天使用findbugs扫描项目后发现很多高危漏洞,其中非常常见的一个是比较两个Long或Integer时直接使用的==来比较. 其实这样是错误的. 因为Long与Ineger都是包装类型,是对象. ...

  4. Python基础之:Python中的流程控制

    文章目录 简介 while语句 if 语句 for语句 Break Continue pass 简介 流程控制无非就是if else之类的控制语句,今天我们来看一下Python中的流程控制会有什么不太 ...

  5. python和控制流程_Python基础之:Python中的流程控制

    简介 流程控制无非就是if else之类的控制语句,今天我们来看一下Python中的流程控制会有什么不太一样的地方. while语句 python中的while语句和其他语言没有什么不一样,我使用wh ...

  6. php中的流程控制详解

    作者名:Demo不是emo  主页面链接:主页传送门 创作初心:对于计算机的学习者来说,初期的学习无疑是最迷茫和难以坚持的,中后期主要是经验和能力的提高,我也刚接触计算机1年,也在不断的探索,在CSD ...

  7. 05JavaScript中的流程控制

    技术交流QQ群:1027579432,欢迎你的加入! 1.流程控制 在一个程序执行的过程中,各条代码的执行顺序对程序的结果是有直接影响的.很多时候我们要通过控制代码的执行顺序来实现我们要完成的功能. ...

  8. 4、java中的流程控制(程序结构)

            说一下java的流程控制(程序结构),其实对于计算机而言,无非就那几类执行流程(程序结构),程序从头到尾依次执行每一行代码,这就是顺序结构:也可能在执行过程中遇到条件判断,造成程序运行 ...

  9. python中的流程控制

    流程控制 流程: 计算机执行代码的顺序,就是流程. 流程控制: 对计算机代码执行顺序的控制,就是流程控制. 流程分类: 流程控制一共分为三类,分别是 顺序结构.分支(选择)结构.循环结构. 顺序结构 ...

最新文章

  1. 合种侧柏、油松专车3天4000能量领证
  2. dev layoutview 怎么显示大小_Liunx驱动学习:基于imx6ul 驱动oledssd1306 实现终端显示...
  3. 什么是云计算基础设施?
  4. ASP.NET MVC 视图
  5. 脚本应用实例_Selenium自动化中无头浏览器的应用
  6. Parcelable protocol requires a Parcelable.Creator object called。。。。。
  7. Python PyCrypto,Paramiko模块安装和使用
  8. centos 卸载docker_五分钟安装docker并启动第一个docker容器
  9. Stylus Studio 2010 XML 的激活码
  10. 张正友标定法过程推导笔记
  11. 【操作系统原理-2014年清华陈渝老师】索引
  12. OJ 2308 Problem D Grape
  13. marked扩展语法(增加自定义表情)
  14. BZOJ 1143 祭祀 river(最大独立集)
  15. 【多智能体强化学习】
  16. android ROM设置默认Launcher(主屏幕应用)
  17. Vue和elementUI常用组件问题
  18. 联通系统升级服务器地址,联通iptv升级服务器地址
  19. 【微电网优化】基于matlab粒子群优化算法的微电网调度(光伏、储能、电动车、电网交互)【含Matlab源码 2190期】
  20. add python to environment,Python 安装

热门文章

  1. 爬虫爬取二次元网站美女图片
  2. 高校教学管理信息系统/教学管理系统
  3. 超全!40000字 Matplotlib 实战
  4. 其实大多数人没必要关注iPhone5
  5. 空间点过程与随机测度(二):测度的故事
  6. mysql教学版_MySQL 8从零开始学(视频教学版)
  7. j90度度复数运算_虚数i的运算公式及实际意义
  8. 文章同步多平台操作教程!
  9. excel表格多列数据中查找重复行数据
  10. 会议室预定小程序[叮当会议]