找回密码
 注册
Simdroid-非首页
查看: 262|回复: 14

【讨论】怎样访问ABAQUS的原代码?

[复制链接]
发表于 2004-2-27 17:45:13 | 显示全部楼层 |阅读模式 来自 甘肃兰州
请大虾指教,ABAQUS有没有对用户开放原代码,
怎样才能看到ABAQUS的原代码.
举一个简单的例子,我想知道ABAQUS中关于画圆
的PYTHON代码该怎么办?
请指教!!
发表于 2004-2-27 18:21:16 | 显示全部楼层 来自 北京

回复: 【讨论】怎样访问ABAQUS的原代码?

Simdroid开发平台
from abaqus import *
from abaqusConstants import *
session.Viewport(name='Viewport: 1', origin=(0.0, 0.0), width=246.796875,  
    height=172.265625)
session.viewports['Viewport: 1'].makeCurrent()
session.viewports['Viewport: 1'].maximize()
from driverUtils import executeOnCaeStartup
executeOnCaeStartup()
Mdb()
#: A new model database has been created.
#: The model "Model-1" has been created.
session.viewports['Viewport: 1'].setValues(displayedObject=None)
import part
import regionToolset
import displayGroupMdbToolset as dgm
import sketch
session.viewports['Viewport: 1'].setValues(displayedObject=None)
s = mdb.models['Model-1'].Sketch(name='__profile__', sheetSize=200.0)
g, v, d = s.geometry, s.vertices, s.dimensions
s.sketchOptions.setValues(sheetSize=200.0, gridSpacing=5.0, grid=ON,  
    gridFrequency=2, constructionGeometry=ON, dimensionTextHeight=5.0,  
    decimalPlaces=2)
s.setPrimaryObject(option=STANDALONE)
s.CircleByCenterPerimeter(center=(0.0, 0.0), point1=(30.0, 0.0))
#
#在Sketch中,画中心为(0,0),圆周上有一点位于(30,0)的圆
#
mdb.models['Model-1'].sketches.changeKey(fromName='__profile__',  
    toName='Sketch-1')
s.unsetPrimaryObject()
 楼主| 发表于 2004-2-27 19:12:11 | 显示全部楼层 来自 甘肃兰州

回复: 【讨论】怎样访问ABAQUS的原代码?

遇到牛人了,这是自己编写的,还是在哪里找的?
清指教!
 楼主| 发表于 2004-2-27 19:14:05 | 显示全部楼层 来自 甘肃兰州

回复: 【讨论】怎样访问ABAQUS的原代码?

不过看起来好象不是画圆的ABAQUS原代码!!
呵呵,见笑!
发表于 2004-2-27 19:33:07 | 显示全部楼层 来自 北京

回复: 【讨论】怎样访问ABAQUS的原代码?

是PYTHON的代码
可以满足画圆要求:I
我没有说是fortran的源代码:I
感觉不是很清楚你想要什么:I,从源代码、PYTHON级水平建模吗
我肯定不是牛仁了,刚自学几天^^b
 楼主| 发表于 2004-2-27 19:41:43 | 显示全部楼层 来自 甘肃兰州

回复: 【讨论】怎样访问ABAQUS的原代码?

因为ABAQUS是用PYTHON编写的,
那么我想要PYTHON 的原代码,因为我想
在其中加一个椭圆程序,不知可行么?
 楼主| 发表于 2004-2-27 19:51:55 | 显示全部楼层 来自 甘肃兰州

回复: 【讨论】怎样访问ABAQUS的原代码?

其实准确的说,我是想知道画圆函数
CircleByCenterPerimeter()的源代码!
呵呵,不知道我现在表述清楚了没有:(
发表于 2004-2-27 19:58:45 | 显示全部楼层 来自 北京

回复: 【讨论】怎样访问ABAQUS的原代码?

要获得初步的代码很简单,
每次abaqus启动都会修改当前目录下的abaqus.rpy文件
这个文件实际就是PYTHON语言写成的
abaqus.rpy纪录每次启动计算机进行的所有步骤
我上面地代码就是直接从abaqus.rpy中获取的
  
椭圆的函数不知道有没有
不过有苯办法
虽然方法有点苯
用直线连出来的
不过,只要能分网,应该不会影响分网后的计算吧
你可以先找到画短线的方法,然后再一条一条连出个椭圆(不知道有没有直接画椭圆的函数:I)
  
我以前做的椭圆函数找不到了……不过那个没几行相信你自己可以做一个
  
PS:提醒一下PYTHON的计算功能不是很好,注意除错,这点也许画椭圆用得着
 楼主| 发表于 2004-2-27 20:39:31 | 显示全部楼层 来自 甘肃兰州

回复: 【讨论】怎样访问ABAQUS的原代码?

能不能够再深入一点,知道里面的函数是怎么编写的?
发表于 2004-2-27 21:12:04 | 显示全部楼层 来自 北京

回复: 【讨论】怎样访问ABAQUS的原代码?

象下面的方式就可以调用\写函数
  1. a=f(30)
  2. #a=f(30)是调用函数f,令a=60
  3. def f(x):
  4.   return x*2
  5.   
  6. def fax1(x):
  7.   return x*x
  8.   
  9. c=fax1(20)
  10. #c=fax1(20)是调用函数f,令c=400
  11.   
  12. #调用函数和函数位置没有先后分别
  13. #python是完全靠缩进判断块的,注意缩进定义函数内容
复制代码
 楼主| 发表于 2004-2-27 21:15:32 | 显示全部楼层 来自 甘肃兰州

回复: 【讨论】怎样访问ABAQUS的原代码?

看来大虾是一位PYTHON高手
可以取取经么?看哪本书较好
发表于 2004-2-27 21:18:18 | 显示全部楼层 来自 北京

回复: 【讨论】怎样访问ABAQUS的原代码?

上面代码缩进不对
上传附件……

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
发表于 2004-2-27 21:21:27 | 显示全部楼层 来自 北京

回复: 【讨论】怎样访问ABAQUS的原代码?

高手^6^…………:I:I
  
市面上没见过针对abaqus的python教程
其他的随便看了。真没什么可推荐的= =
发表于 2004-2-27 21:37:53 | 显示全部楼层 来自 日本

回复: 回复: 【讨论】怎样访问ABAQUS的原代码?

ilovenili wrote:
因为ABAQUS是用PYTHON编写的
那么我想要PYTHON 的原代码,因为我想
在其中加一个椭圆程序,不知可行么?

  
;):(
所有的PY都是差不多一样的,把ABAQUS的PY拿到MARC玩玩看?!
 楼主| 发表于 2004-2-27 21:39:35 | 显示全部楼层 来自 甘肃兰州

回复: 【讨论】怎样访问ABAQUS的原代码?

可是我不懂MARC哦
呵呵,失望吧!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-4-19 21:49 , Processed in 0.072392 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表