ITT IDL的Python绑定
pyIDL的Python项目详细描述
pyidl
idl的python绑定,基于andrew mcmurry的python idl
需要itt的idl和numarray
下载pyidl源tarfile
安装
idl-incdir='/itt/idl/external/include'
$export-idl-bindir='/itt/idl/bin/bin/bin.linux.x86'
$export x11-libdir='/usr/lib/'(仅限linux)
安装包
$python setup.py build
$python setup.py install安装
(或者,包含一个makefile)
;文档
导入idl类
导入idl类
>>;>;>from pyidl import idl
>实例化idl类
>;>ri=idl()
>;>print ri.doc()
python idl bindings
eval(command):
执行idl命令
get(name,[array,allownone]):
fetch a variable from idl
put(name,value,[array,type,allownone]):
将变量推送到idl
who([name,local,stdout]):
打印/返回idl/本地变量
帮助([名称]):
打印idl帮助消息(对于变量)
删除(名称):
销毁选定的idl变量
映射([名称]):
获取idl数据类型映射
提示():
交互式idl会话
打印(值):
使用idl print命令打印
push python变量到idl中,并与来自numarray import的idl脚本语言
>;
>;>x=[]
>;>for i in range(21):x.append(i*pi/10)
…
>;>ri.put('x',x)
>;>ri.eval('y=sin(x)')
>;>ri.eval('plot,x,y')
ri.prompt()
idl接口:
%at$main$
x double=array[21]
y double=array[21]
编译过程:
$main$
compiled函数:
idl>;如果x[0]lt 1$
idl>;则打印,x
0.0000000.31415927 0.62831853 0.94247780 1.2566371
1.5707963 1.8849556 2.1991149 2.5132741 2.8274334
3.1415927 3.4557519 3.7699112 4.0840704.3982297
4.7123890 5.0265482 5.340705.6548668 5.9690260
6.2831853<BR/> IDL&>;在IDL会话中的检查变量:BR/> & Gt;& Gt;R.Wh():BR/>(′y,x′)
& gt;& gt;r.WHO(′y)
[0,0.3090169943749474,0.5877852522924731,0.8090169943749474,
0.9510565162951535,1,0.9510565162951536,0.8090169943749474,
0.5877852522924732,0.3090169943749475,1.224606353822323773E-16,
-0.30901699437943749494949499,-0.5877858525229292472303,--0.809016916994374949494734,
-0.9510565651629515353,--1.0,--0.951056565162951629515364,--0.80901056565656516265162951629515364,--0.8090169169169944949494949494949494756,
-0.58778585252292472292472336,--0.30901691691699449494949494949494949494949494949494949494949494949494949494949494949sinx=ri.get('y')
使用快捷方式对于放、放、评估和获取,ri.z=0.5
>;ri('print,z')
>0.50000000
>;ri.z+1
>1.5
>0.50000000
>;ri.z+1
>1.5
>从idl中删除变量;ri.deletete('x')
>>>;ri.delete('y')
>直接从python中使用idl函数/过程直接从python中使用idl函数/过程。.sin(x)
[0.0,0.309016994374949474,0.5877858525229242472314,0.809016994374949494745,
0.9510565651629515353,1.0,0.9510565651629515364,0.80901699437494949494745,
>0.581056565656565162951535353535353,0.0,0.95105105656516265651629515315315315364,0.809016916994374949494745,
>0.0.589016916994494949494949494949494949494949494740,
>0.0.58858585858585858585858585858585
-0.95105651629515353,-1.0,-0.95105651629515364,-0.80901699437494756,
-0.58778525229247336,-0.30901699437494762,-2.4492127076447545E-16]
0.6:07/18/07
增加了对idl_6.4的支持
直接idl函数/过程调用中的固定布尔值支持
0.5:04/18/07
对python2.5的固定支持
0.4.1:12/01/06
对mac操作系统的固定支持
0.4:10/06/06
增加了对idl_6.3的支持
改进了对numpy的支持
消除了对数值的依赖
0.3:06/09/06
改进了对数字的支持
增加了对64位平台的支持
扩展示例
0.2:05/19/06
对put、get、eval的快捷方式
从python访问idl函数/过程
添加了示例目录
0.1:06/21/05
初始;rsi的idl的python绑定
交互式idl提示
idl的python绑定,基于andrew mcmurry的python idl
需要itt的idl和numarray
下载pyidl源tarfile
安装
idl-incdir='/itt/idl/external/include'
$export-idl-bindir='/itt/idl/bin/bin/bin.linux.x86'
$export x11-libdir='/usr/lib/'(仅限linux)
安装包
$python setup.py build
$python setup.py install安装
(或者,包含一个makefile)
;文档
导入idl类
导入idl类
>>;>;>from pyidl import idl
>实例化idl类
>;>ri=idl()
python idl bindings
eval(command):
执行idl命令
get(name,[array,allownone]):
fetch a variable from idl
put(name,value,[array,type,allownone]):
将变量推送到idl
who([name,local,stdout]):
打印/返回idl/本地变量
帮助([名称]):
打印idl帮助消息(对于变量)
删除(名称):
销毁选定的idl变量
映射([名称]):
获取idl数据类型映射
提示():
交互式idl会话
打印(值):
使用idl print命令打印
push python变量到idl中,并与来自numarray import的idl脚本语言
>;
>;>x=[]
>;>for i in range(21):x.append(i*pi/10)
…
>;>ri.put('x',x)
>;>ri.eval('y=sin(x)')
>;>ri.eval('plot,x,y')
ri.prompt()
idl接口:
%at$main$
x double=array[21]
y double=array[21]
编译过程:
$main$
compiled函数:
idl>;如果x[0]lt 1$
idl>;则打印,x
0.0000000.31415927 0.62831853 0.94247780 1.2566371
1.5707963 1.8849556 2.1991149 2.5132741 2.8274334
3.1415927 3.4557519 3.7699112 4.0840704.3982297
4.7123890 5.0265482 5.340705.6548668 5.9690260
6.2831853<BR/> IDL&>;在IDL会话中的检查变量:BR/> & Gt;& Gt;R.Wh():BR/>(′y,x′)
& gt;& gt;r.WHO(′y)
[0,0.3090169943749474,0.5877852522924731,0.8090169943749474,
0.9510565162951535,1,0.9510565162951536,0.8090169943749474,
0.5877852522924732,0.3090169943749475,1.224606353822323773E-16,
-0.30901699437943749494949499,-0.5877858525229292472303,--0.809016916994374949494734,
-0.9510565651629515353,--1.0,--0.951056565162951629515364,--0.80901056565656516265162951629515364,--0.8090169169169944949494949494949494756,
-0.58778585252292472292472336,--0.30901691691699449494949494949494949494949494949494949494949494949494949494949494949sinx=ri.get('y')
使用快捷方式对于放、放、评估和获取,ri.z=0.5
>;ri('print,z')
>0.50000000
>;ri.z+1
>1.5
>0.50000000
>;ri.z+1
>1.5
>从idl中删除变量;ri.deletete('x')
>>>;ri.delete('y')
>直接从python中使用idl函数/过程直接从python中使用idl函数/过程。.sin(x)
[0.0,0.309016994374949474,0.5877858525229242472314,0.809016994374949494745,
0.9510565651629515353,1.0,0.9510565651629515364,0.80901699437494949494745,
>0.581056565656565162951535353535353,0.0,0.95105105656516265651629515315315315364,0.809016916994374949494745,
>0.0.589016916994494949494949494949494949494949494740,
>0.0.58858585858585858585858585858585
-0.95105651629515353,-1.0,-0.95105651629515364,-0.80901699437494756,
-0.58778525229247336,-0.30901699437494762,-2.4492127076447545E-16]
0.6:07/18/07
增加了对idl_6.4的支持
直接idl函数/过程调用中的固定布尔值支持
0.5:04/18/07
对python2.5的固定支持
0.4.1:12/01/06
对mac操作系统的固定支持
0.4:10/06/06
增加了对idl_6.3的支持
改进了对numpy的支持
消除了对数值的依赖
0.3:06/09/06
改进了对数字的支持
增加了对64位平台的支持
扩展示例
0.2:05/19/06
对put、get、eval的快捷方式
从python访问idl函数/过程
添加了示例目录
0.1:06/21/05
初始;rsi的idl的python绑定
交互式idl提示