Skip to content

swbpy2.tool 模块

概述

swbpy2.tool 包含用于启动 Sentaurus Workbench 批处理应用和 Sentaurus Visual 的辅助功能。请参考 Examples 获取用例代码。

类和方法列表

class swbpy2.tool.Standards(wait_upon_exit=True, wait_timeout=None, standardout=-3, standarderr=-3)

调用 SWB 套件标准应用程序的方法集合。

参数

  • wait_upon_exit (bool):退出时等待。
  • wait_timeout:等待超时时间。
  • standardout (int):标准输出文件描述符。
  • standarderr (int):标准错误文件描述符。

Standards.finalize()

Standards 对象的析构函数:负责关闭所创建进程。

Standards.gcleanup(path, verbose=False, default=False, fast=False, back=False, logFiles=False, preprocessorFiles=False, renumber=False, nodeFiles=False, setVars=False, extVars=False, resetStatus=False, nodes=[])

SWB 清理应用程序及其标准参数。

参数

  • path (str):SWB 项目路径。
  • verbose (bool):启用详细模式的开关:'-verbose'。
  • default (bool):启用默认模式的开关:'-d'。
  • fast (bool):启用快速模式的开关:'-fast'。
  • back (bool):启用后台模式的开关:'-back'。
  • logFiles (bool):启用日志文件模式的开关:'-log'。
  • preprocessorFiles (bool):清理预处理器文件的开关:'-pp'。
  • renumber (bool):清理后重新编号节点的开关:'-ren'。
  • nodeFile (bool):启用节点输出文件清理的开关:'-res'。
  • setVars (bool):清理变量的开关:'-sv'。
  • extVars (bool):清理提取变量的开关:'-xv'。
  • resetStatus (bool):重置项目清理状态的开关:'-unlock'。
  • nodes (list):要清理的输入节点列表:'-n'。

抛出:如果同一进程的另一个实例已在运行,则抛出 RuntimeError。如果输入的 SWB 项目路径为空,则抛出 ValueError。

Standards.gsub(path, verbose=False, expr=None, queue=None, maxExperiments=0, startTime=None, nodes=[])

SWB 调度程序应用程序及其标准参数。

参数

  • path (str):SWB 项目路径。
  • verbose (bool):启用详细模式的开关:'-verbose'。
  • expr (bool):启用表达式模式的开关:'-e'。
  • queue (str):将所有节点提交到队列:'-q'。
  • maxExperiments (int):定义最大并发实验数:'-max'。
  • startTime (str):定义提交时间戳,格式:"mm/dd/yyyy hh:mm:ss AM|PM"(默认:立即)。
  • macros (list):要评估的 SWB 宏列表。
  • nodes (list):要清理的输入节点列表:'-n'。

抛出:如果同一进程的另一个实例已在运行,则抛出 RuntimeError。如果输入的 SWB 项目路径为空,则抛出 ValueError。

Standards.spp(path, macros=[], verbose=False, expr=None, input=False, pack=False, onlytcl=False, nodes=[])

SWB 预处理器应用程序及其标准参数。

参数

  • path (str):SWB 项目路径。
  • macros (list):要评估的 SWB 宏列表。
  • verbose (bool):启用详细模式的开关:'-verbose'。
  • expr (bool):启用表达式模式的开关:'-e'。
  • input (bool):启用预处理文件生成的开关:'-i'。
  • pack (bool):在预处理期间不生成空行的开关:'-pack'。
  • onlytcl (bool):仅预处理命令文件的 Tcl 块。
  • nodes (list):要清理的输入节点列表:'-n'。

抛出:如果同一进程的另一个实例已在运行,则抛出 RuntimeError。如果输入的 SWB 项目路径为空,则抛出 ValueError。

class swbpy2.tool.Svisual(wait_upon_ready=True, tmp_path='/remote/...')

基类:object

用于在 SVisual 中加载文件的类:绘图文件或脚本文件。

参数

  • wait_upon_ready (bool):就绪时等待。
  • tmp_path (str):临时路径。

Svisual.Detach()

将 Svisual 实例的当前进程从此对象分离的方法。

Svisual.IsTclReady()

测试 Svisual 实例的 Tcl 接口是否就绪的方法。

返回:Tcl 接口是否就绪的检查结果。类型:bool

抛出:如果 Svisual 实例尚未创建,则抛出 Exception。

Svisual.LoadFile(file)

将输入 Tcl 脚本文件发送到 Svisual 实例。

参数

  • file (str):由 Svisual 实例执行的输入 Tcl 脚本。

抛出:如果 Svisual 实例尚未创建,或 Svisual 实例的 Tcl 接口尚未就绪,则抛出 Exception。

Svisual.finalize()

Svisual 对象的析构函数:负责关闭所创建的 Svisual 实例。

示例

swbpy2.tool.Standards 类可用于执行 SWB 套件的批处理应用程序实例:

python
from swbpy2.tool import *

# creation of an instance for "Standards" interface
_app = Standards()

# invoke gcleanup batch application
_app.gcleanup('/u/username/Applications_Library/GettingStarted/swb/SimpleMOS/')

swbpy2.tool.Svisual 类可用于执行 TCAD 工具 "Svisual" 的实例,并发送加载 Tcl 脚本的消息:

python
from swbpy2.tool import *

# creation of an instance for "Svisual" interface
_obj = Svisual()

# send the message to load a Tcl script
_obj.LoadFile('./path/to/tcl_script.tcl')

基于 Sentaurus TCAD 官方文档构建

代码块