“Impro”的版本间差异

来自Shiyin's note
跳到导航 跳到搜索
无编辑摘要
无编辑摘要
 
(未显示同一用户的39个中间版本)
第1行: 第1行:
John Moustakas写的一系列IDL code,有很多有用的程序
John Moustakas写的一系列IDL code,有很多有用的程序。参考文件[https://github.com/moustakas/impro]
==通用==
*l,pwd,cwd,一些类UNIX命令,用spawn实现

===数组===
*range
:生成一个分界的数组 (有较多功能)
print, range(0,1,5)
*findex
:计算一个浮点的位置,可用于插值,例子
u=randomu(iseed,200000) & u=u(sort(u))
v=randomu(iseed,10)
fx=findex(u,v);计算v这个数字(数组)在排序之后的u数组中间的位置
v2=interpolate(u,fx)插值 ;interpolate是IDL内置的插值函数
print,v,v2 ;可以看到v2几乎等于v

*rebinw
:将数组分bin,功能比较强大。

*sort_nd
:多维数组排序

===统计===
*Im_stats,Im_mean,Im_median,Im_mean,Im_max
:求均值,中值,等基本统计量,但是可以剔除一些可疑值,调用的[[idlutils]]中的djs_iterstat

*IM_MEDXBIN
:类似于[[My IDL program]]中的binxy

===结构===
*IM_STRUCT_TRIMTAGS
:调整[[结构]]数组

===字符===
*SIGFIG 把一个浮点数组转换为字符数组,并保留指定精度
*getcr 生成一个回车符

===文件读写===
*READFAST
:可以快速的读入逗号分隔的文件,但是只能是浮点或者双精度数

==天文==
*ASTROCONST()天文上常用的常数,IM_Lsun (太阳光度,ergs^-1),IM_light(光速)
a=astroconst(/mks);国际单位制
help,a
'''IDL8中有内置的系统结构变量!const,其中包含常用常数'''

*BELL_MASS()
:计算恒星质量 Bell et al. color-based method.
::M/Lr=-0.306+10.097(g-r)


*NED_WEBGET_BASIC (测试没有成功)
:从NED获取文件
IDL> ned_webget_basic, 'ngc5194', b
IDL> struct_print, b

===光谱相关===
*MAKE_WAVE
:根据文件头(必须是mrdfits读入的主文件头,下面的iforage的不行),生产一个光谱的波长数组,经过测试可适用于SDSS的光谱,生产的是对数波长


*im_filtermag
*im_filtermag
:调用[[kcorrect]]中的filter文件,计算光谱积分后得到的各个波段的星等。参见[[由光谱到星等]]
:调用[[kcorrect]]中的filter文件,计算光谱积分后得到的各个波段的星等。参见[[由光谱到星等]]

*iforage
:将光谱的文件头读入成一个结构,很方便

* K_LAMBDA()
:常用[[消光曲线]]

*BALMER_TEMPERATURE
:Compute the temperature dependence of the Balmer decrement

*iRedshift
:利用[[PCA]]的方法测红移

*Spectral_indices
:测量常用的谱线指数

==画图==
*IM_LINEID_PLOT
:标志谱线用

*IM_PS2HTML
:将ps图转换成PNG文件,然后生成一个网页

*IM_HESSPLOT
:生成一个密度图

*GANG_PLOT_POS 和 pagemaker
:[[画图]]用的,类似于[[multiplot]],但是好像更简单。用法
struct=gang_plot_pos(nrow,ncol,col,row, [XTICKFORMAT=,YTICKFORMAT=, OFFSET=,SIZE=, /POSITION_ONLY]
plot,findgen(10), _EXTRA=gang_plot_pos(2,1,0) plot,findgen(10)^2,_EXTRA=gang_plot_pos(2,1,1)

*SFR_UNITS
:SFR的单位(太阳质量每年),画图的时候用

*WKILL,关掉所有的画图窗口,wdelete只能关闭指定窗口

2024年11月18日 (一) 02:19的最新版本

John Moustakas写的一系列IDL code,有很多有用的程序。参考文件[1]

通用

  • l,pwd,cwd,一些类UNIX命令,用spawn实现

数组

  • range
生成一个分界的数组 (有较多功能)
print, range(0,1,5)
  • findex
计算一个浮点的位置,可用于插值,例子
 u=randomu(iseed,200000) & u=u(sort(u)) 
 v=randomu(iseed,10)   
 fx=findex(u,v);计算v这个数字(数组)在排序之后的u数组中间的位置
 v2=interpolate(u,fx)插值 ;interpolate是IDL内置的插值函数
 print,v,v2 ;可以看到v2几乎等于v
  • rebinw
将数组分bin,功能比较强大。
  • sort_nd
多维数组排序

统计

  • Im_stats,Im_mean,Im_median,Im_mean,Im_max
求均值,中值,等基本统计量,但是可以剔除一些可疑值,调用的idlutils中的djs_iterstat
  • IM_MEDXBIN
类似于My IDL program中的binxy

结构

  • IM_STRUCT_TRIMTAGS
调整结构数组

字符

  • SIGFIG 把一个浮点数组转换为字符数组,并保留指定精度
  • getcr 生成一个回车符

文件读写

  • READFAST
可以快速的读入逗号分隔的文件,但是只能是浮点或者双精度数

天文

  • ASTROCONST()天文上常用的常数,IM_Lsun (太阳光度,ergs^-1),IM_light(光速)
a=astroconst(/mks);国际单位制
help,a

IDL8中有内置的系统结构变量!const,其中包含常用常数

  • BELL_MASS()
计算恒星质量 Bell et al. color-based method.
M/Lr=-0.306+10.097(g-r)


  • NED_WEBGET_BASIC (测试没有成功)
从NED获取文件
IDL> ned_webget_basic, 'ngc5194', b
IDL> struct_print, b

光谱相关

  • MAKE_WAVE
根据文件头(必须是mrdfits读入的主文件头,下面的iforage的不行),生产一个光谱的波长数组,经过测试可适用于SDSS的光谱,生产的是对数波长
  • im_filtermag
调用kcorrect中的filter文件,计算光谱积分后得到的各个波段的星等。参见由光谱到星等
  • iforage
将光谱的文件头读入成一个结构,很方便
  • K_LAMBDA()
常用消光曲线
  • BALMER_TEMPERATURE
Compute the temperature dependence of the Balmer decrement
  • iRedshift
利用PCA的方法测红移
  • Spectral_indices
测量常用的谱线指数

画图

  • IM_LINEID_PLOT
标志谱线用
  • IM_PS2HTML
将ps图转换成PNG文件,然后生成一个网页
  • IM_HESSPLOT
生成一个密度图
  • GANG_PLOT_POS 和 pagemaker
画图用的,类似于multiplot,但是好像更简单。用法
 struct=gang_plot_pos(nrow,ncol,col,row, [XTICKFORMAT=,YTICKFORMAT=,                       OFFSET=,SIZE=, /POSITION_ONLY]
 plot,findgen(10),  _EXTRA=gang_plot_pos(2,1,0)  plot,findgen(10)^2,_EXTRA=gang_plot_pos(2,1,1)
  • SFR_UNITS
SFR的单位(太阳质量每年),画图的时候用
  • WKILL,关掉所有的画图窗口,wdelete只能关闭指定窗口