type
status
date
slug
summary
tags
category
icon
password
特定的模拟以工程的形式进行组织。SWB自动管理信息流,包括用户输入文件的前处理、参数化工厂、设置和执行特定的工具以及查看结果。
SWB允许用户定义参数和变量以及进行复杂的参变量分析。结果可输入到统计软件和电子表格软件。
1 SWB运行过程
运行一个已知的工程,并能知道各项界面的功能和查看errorlog.
1.1 加载SWB工程
启动SWB,然后双击工程窗口中的SWB_nmos,打开SWB_nmos工程。
在SWB_nmos例子中,工具流包括Sprocess,SDE,Sdevice和Inspect。在工具流下面,列出了[n1],[n2]等模拟节点。
如上图未显示模拟节点可通过:View→Tree Options→Show Node Numbers 开启。
模拟节点的一个完整序列形成一个实验(experiment)。如果采用参数的话,一个工具流可以对应任意多个实验。
在节点属性中,显示了节点序号,对应的工具,相应的参数及其值,节点状态,模拟的日期和时间,模拟运行所使用的计算机,模拟耗费的总时间。在所有这些信息中,只有节点状态是可以改变的,在很多情况下这是一个有用的特性。节点信息对话框也显示了提取的和设置的变量(Lgeff,Xj,Ygox,Tox),以及前面步骤所用的参数及其值。
1.2 改变树的显示属性
工程中的每个模拟节点都有一种颜色显示其状态。右下角的颜色表显示了每种颜色代表的含义。
黄色节点:表明节点已经被模拟过。
蓝色节点:给出工艺和器件模拟步骤的一些信息。
SWB工程显示的样式是非常灵活的,用户可以调整。用户可以显示工具流,或者为不同的模拟节点排序,或者显示参数、变量和提取的值以及其他信息。
显示更多信息:View→Tree Options
1.3 清空工程目录
在运行SWB工程之前,清空前次运行获得的工程结果。
- Project→Operations→Clean up
- 在弹出的对话框中,选择需要移除的项。
- 单机Cleanup。
SWB删除所有与前次运行相关的文件,准备进行全新的运行。在图中节点的颜色会发生相应的改变,从黄色(done)变为白色(White)。
1.4 运行工程
在SWB item上点击右键,选Project→Run()
如果只需要运行一部分节点,在Nodes域中选择需要运行的节点的序号。例如,如果只需要运行Sentaurs Structure Editor的前两个节点(n15,n16),在节点域中输入15 16,单击Ok。
在运行一个模拟节点之前,SWB对输入文件进行预处理,亦即:检查语法错误,将参数和变量用相应的值替换。
在成功进行预处理之后,SWB以下面的形式创建模拟输入文件:
pp<node_number>_<tool_name>.cmd和pp<node_number>_des.par(Sdevice参数文件)
只有当这些文件创建之后,节点的模拟才会开始。预处理可以在节点的模拟开始之前自动进行,也可以用户在不进行模拟的情况下单独执行预处理。
只进行预处理:
在SWB item上点击右键,选Project→Preprocess。
1.5 查看输出结果
每个特定的节点都有一些输入和输出文件与之关联。这可以通过右键点击一个节点并选择Visualize查看。可以采用SEdit查看所有的文本和日志文件。
所有的输出数据文件(包括Dios、Sprocess、Mdraw、Sdevice、SdeviceEMW的输出)均可采用TecplotSV查看,所有的曲线(Dios和Sdevice输出的.plx和.plt文件)均可采用Inspect查看。
除此之外,运行模拟的过程中写到标准输出的信息,可以通过选择ViewOutput选项查看。
2 SWB创建
装配和保存一个新的SWB工程。
2.1 设置工具流
设置工具流的第一步是创建一个工程:
Project→New→New Project
这将在tmp文件夹中创建一个临时工程,工程名类似g_lnx_2879_0.tmp.
设置一个工具流:
在No Tools处点击右键并且选择Add.
可以通过点击Tools增加sprecess或者sdevice等。
- Label:如果一个project中有多个sprocess等相同的Tool,最好使用不同的标签以示区别。
- Input Files & Output Files:点击这两项item会展示所有可获得文件的列表。
添加Tool完成后,继续右击Sprocess:Edit Input→Commands.
增加下面代码到文本编辑器中:
最后,保存Sprocess_fps.cmd文件并关闭文本编辑器。
3 组装多个实验
添加参数和变量,创建多个实验和方案。
3.1 添加参数
在SWB中,可以定义参数并赋予参数多个值从而创建实验分支。参数的每个值创建一个实验,因此,如果一个参数有N个值,则对应N个实验。如果参数P1和P2分别对应M和N个值,则对应M*N个可能的实验。
tip:
在pdose后面增加penergy并设定default value = 40.
修改commands中:
To:
Project→Operations→Preprocess 进行预处理。
tips(创建多个实验):
可以进行多数据设置,列入,pdose设置为5e14 1e15,penergy设置为 40 45 50 55 60.这样会有2*5个实验数据。如下图:
4 创建方案
4.1 方法一
对于项目参数的几个值,实验的总数(对参数值的每个组合的可能的模拟)可能会变得非常高。你可以运行所有这些或者做实验的子集叫做场景。整个实验都构成了这个场景。
此外,您还可以复制一组实验来创建一个专用场景并单独运行实验。为了说明这一点,创建一个名为high_energy的场景,由注入能量超过50 keV的实验组成。
- New Scenario:设置的新的方案的名字
- include Experiments by Expression:设置新的实验方案的条件(通过条件筛选获得)
4.2 方案二
将实验复制到场景的另一种方法是创建一个带有空表达式的场景,并将实验复制到场景中,如下所示:
- 创建空的Scenario并回到all中将需要的实验复制过来。
复制的方法:
- 鼠标从第一列选中的开始拖动
- 按住ctrl电极需要的实验
4.3 方案三(最快方法)
选中后通过Exeriments→Manage Membership in Scenarios→Add New Scenario[PS:must include selected experiment(s)]
5 修改项目树
5.1 对项目树的各类操作
通常,当项目中使用许多参数时,不需要模拟参数的某些组合。在这种情况下,您可以修剪,即从项目树中删除不必要的实验。
选中需要删除的节点:Nodes→Configuration→Prune
所有被Prune的节点都会显示灰色。
显示或隐藏Pruned节点:
View→Tree Options→Show Pruned
恢复Pruned节点:
选中节点:Nodes→Configuration→Unprune
📎 参考文章
- Sentaurus Training local html