1.脚本接口简介

Abaqus中的脚本接口(ASI)是在Python应用程序的基础上开发的,基于Abaqus中的脚本接口,用户可以实现下列功能。

  • 自定义Abaqus环境文件
  • 创建宏来自动进行前、后处理
  • 读取或写出输出数据库文件(ODB)文件
  • 进行参数分析
  • 创建Abaqus插件程序

执行脚本的命令接口,可以通过GUI、命令行接口或者脚本执行命令,其脚本与内核的关系如下图所示。

  1. 提供两种GUI程序设计,分别为RSG对话框构造器和Abaqus GUI工具包。
  2. 命令行接口,直接在命令行输入python的命令
  3. 脚本执行,将脚本编程成函数,并在【File|Run Script...】来执行

2. 宏录制

Abaqus操作过程中的命令都会被记录下来,在工作目录下会生成*.rpy文件,在该文件中记录的内容较多,可使用宏录制的方法来记录了特定步骤的命令。

执行命令【File|Macro Manager...】,在弹出的窗口中点击【Create...】按钮,同时定义宏的名字和路径,一般选择工作目录,即“Work”,然后点击【Continue...】按钮,开始录制。录制结束时,点击【Stop Recording】即可。打开工作目录下的abaqusMacros.py文件,会看到记录的程序。

# -*- coding: mbcs -*-
# Do not delete the following import lines
from abaqus import *
from abaqusConstants import *
import xml.dom.minidom
import time import __main__ def Macro2():
import section
import regionToolset
import displayGroupMdbToolset as dgm
import part
import material
import assembly
import step
import interaction
import load
import mesh
import optimization
import job
import sketch
import visualization
import xyPlot
import displayGroupOdbToolset as dgo
import connectorBehavior
p = mdb.models['Model-1'].parts['Polyhedral1']
f1 = p.faces
p.AddCells(faceList = f1[0:20])

3. 宏回放

执行命令【File|Macro Manager...】,在弹出的窗口中选择要回放的宏程序,然后点击【Run】按钮,即可完成程序的回放。

同时可将宏文件编辑成python脚本程序的形式,以脚本形式来运行。

4. 宏编辑

宏文件录制完成后,可对其中的特定的参数进行修改和提取,从而完成自定义参数的宏文件,然后进行回放。

5. 宏控制

很多Abaqus用户在查阅或者修改Abaqus.rpy文件以及.jnl文件时,经常会看到系统采用getsequenceformmask函数来取选择单个或者多个对象,该函数采用特殊的掩码编码来表示所选取的对象,而在实际编程过程中,用户无法确定自己所需要的掩码,因此就要采用其他的方法来选择要获取的对象,可通过函数session.journalOptions.setValues(...)来控制宏输出的格式。

  1. 掩码方式session.journalOptions.setValues(replayGeometry=COMPRESSEDINDEX,recoverGeometry=COMPRESSEDINDEX)
  2. 索引方式session.journalOptions.setValues(replayGeometry=INDEX,recoverGeometry=INDEX),通过几何体自身索引号来进行获取
  3. 坐标方式session.journalOptions.setValues(replayGeometry=COORDINATE,recoverGeometry=COORDINATE),通过findAt()加点坐标的形式来进行索引。

Abaqus脚本接口及简单应用的更多相关文章

  1. Java集合框架中List接口的简单使用

    Java集合框架可以简单的理解为一种放置对象的容器,和数学中的集合概念类似,Java中的集合可以存放一系列对象的引用,也可以看做是数组的提升,Java集合类是一种工具类,只有相同类型的对象引用才可以放 ...

  2. loadrunner做webservice接口之简单调用

    今天听大神讲了webservice做接口,我按照他大概讲的意思自己模拟实战了下,可能还有很多不对,一般使用webservice做接口,会使用到soapui,但是用了loadrunner以后发现lr很快 ...

  3. FFmpeg与libx264接口源代码简单分析

    ===================================================== H.264源代码分析文章列表: [编码 - x264] x264源代码简单分析:概述 x26 ...

  4. 采用ADM2483磁隔离器让RS485接口更简单更安全

    采用ADM2483磁隔离器让RS485接口更简单更安全 摘要:本文介绍RS485的特点及应用,指出了普通RS485接口易损坏的问题,针对存在的问题介绍了以ADM2483为核心的磁隔离解决方案. 关键词 ...

  5. loadrunner 运行脚本-Run-time Settings-ContentCheck简单设置

    运行脚本-Run-time Settings-ContentCheck简单设置 by:授客 QQ:1033553122 ContentCheck的设置可用来让VuGen检测存在错误的站点页面.如果被测 ...

  6. 【转】MyBatis接口的简单实现原理

    MyBatis接口的简单实现原理 用过MyBatis3的人可能会觉得为什么MyBatis的Mapper接口没有实现类,但是可以直接用? 那是因为MyBatis使用Java动态代理实现的接口. 这里仅仅 ...

  7. MyBatis接口的简单实现原理

    MyBatis接口的简单实现原理 用过MyBatis3的人可能会觉得为什么MyBatis的Mapper接口没有实现类,但是可以直接用? 那是因为MyBatis使用Java动态代理实现的接口. 这里仅仅 ...

  8. BAT脚本编写教程简单入门篇

    BAT脚本编写教程简单入门篇 批处理文件最常用的几个命令: echo表示显示此命令后的字符 echo on  表示在此语句后所有运行的命令都显示命令行本身 echo off 表示在此语句后所有运行的命 ...

  9. usb接口类型 简单分类辨识

    usb接口类型 简单分类辨识 - [相似百科] 庆欣 0.0 4 人赞同了该文章 1. 先放图,随着越来越多的接触智能设备,会遇到各种各样的usb接口,对于很多人来说,接口类型只有:usb接口,安卓接 ...

随机推荐

  1. CQYZOJ P1392 拔河问题

    题目\(1\) Description 一个学校举行拔河比赛,所有的人被分成了两组,每个人必须(且只能够)在其中的一组,且两个组内的所有人体重加起来尽可能地接近. Input 第\(1\)行是一个\( ...

  2. Grafana展示zabbix监控数据

    一.安装步骤 (1)进入官网选择合适的操作系统版本下载Grafana:https://grafana.com/grafana/download?platform=linux [root@zabbix- ...

  3. pytest学习3-断言

    断言: 一个标准的用例都包含了断言,编写pytest自动化脚本的时候,也需要设置断言 pytest常用断言比较大小与是否相等.是否包含.验证boolean 例子一: 验证是否相等: import py ...

  4. java 集合与数组的互转方法,与源码分析

    前言 java数组与集合需要互相转换的场景非常多,但是运用不好还是容易抛出UnSupportedOperationException.下面讲解一下互转的方法,以及结合源码分异常产生的原因 集合转数组 ...

  5. CF432D Prefixes and Suffixes

    CF432D Prefixes and Suffixes 题意 给你一个长度为n的长字符串,"完美子串"既是它的前缀也是它的后缀,求"完美子串"的个数且统计这些 ...

  6. python面试的100题(7)

    8.将字符串 "k:1 |k1:2|k2:3|k3:4",处理成字典 {k:1,k1:2,...} str1 = "k:1|k1:2|k2:3|k3:4" de ...

  7. 文件分割合并DOS版

    这个从163邮箱里翻出来的程序,2004年的修改日期,放这另存一下. 当时拿了一本C++的书来学,学了一阵就琢磨着做一个东东,然后就想起一个以前印象深刻的软件,叫做笨笨狗分割器. 当时主要还是靠3.5 ...

  8. js解释器

    又名js引擎 JavaScript是解释型语言,这就是说它无需编译,直接由JavaScript引擎直接执行. 既然说到了解释型语言,那么我们就来分别以下解释型语言和编译型语言的差别: 编译型语言:程序 ...

  9. java_基础_注解

    注解(annotation),不是注释(comment) 注解可以对程序做说明,这一点和注释一样但是,注解还可以被其他程序读取,这是注释所不具备的 内置注解:@Override(表示重写父类方法)—— ...

  10. SpringCloud Netflix Ribbon

    Eureka客户端的负载均衡:从Eureka server拿到节点列表,客户端自己使用负载均衡的算法确定要使用的节点: Eureka服务端的负载均衡:服务端使用负载均衡的算法,从节点列表中确定要使用的 ...