Silvaco 学习笔记——循环:loop

可以利用loop语句来实现循环过程,其语法如下所示

loop steps = <expr> [print]
l.end [break]
l.modify [level = <expr>] [steps = <expr>] [next | break] [print]

每个loop语句必须有一个对应的l.end语句。这两个语句之间的所有命令都按照loop命令的steps子句中给出的次数重复执行。

如:

loop steps=100
stmt wave=0.6:0.01
solve b1=1e-02 lambda=$wave
l.end

stmt 用来更改循环下变量的更改,此处改变wave的值,从0.6开始,每次增长幅度0.01,直到步长达到100为止。下面语句将使得变量param1的值为1,2,4,8,16

loop steps=5 print
stmt param1=1:*2
l.end

l.modify语句更改当前循环或嵌套循环的行为。使用level子句指定要修改的循环级别.您可以使用steps子句来更改循环执行的次数。小于或等于当前循环迭代计数的值是可以接受的,并且只会导致在当前迭代结束时退出循环。

如果指定了print关键字,则在循环控制下发生变化的所有用户定义变量的值都会在每次变化时打印出来。如果在l.end语句中指定了break关键字,循环将在第一次迭代时退出,而不管steps的值是多少。

next关键字导致循环放弃当前迭代并开始下一次迭代,而不执行l.modify和相关的l.end语句之间的任何语句。
 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值