人生的意义就是思考其意义分享 http://blog.sciencenet.cn/u/qianlivan 天体物理工作者,家乡云南昆明。

博文

CLASS工作日志

已有 5764 次阅读 2013-8-15 15:38 |个人分类:知识|系统分类:科研笔记| class, gildas

20170718


ASTRO> say 'astro%source%v_sou_lsr'

单引号是必须要有的!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


20160118

使用15auga版的Gildas/CLASS,可以读入SDFITS文件,转换为CLASS格式,然后进行后续处理。

!==========================================

sic delete gen_scantable_class.fast

file out gen_scantable_class.fast m

fits read gen_scantable.fits

!==========================================


20160113

!===========================================

dev image white
catalog &1
!observatory 155:28:31.78945 19:49:20.77658  4.02 !CSO
observatory 74:30:00 19:06:00  0.588 ! GMRT
!time "0:00 01-FEB-2015"
time &2
horizon /source
rule x /major
horizon 15 15 /source

!===========================================



20150117


!===========================================

!@showsource catalogname time

dev image white
catalog &1
observatory 155:28:31.78945 19:49:20.77658 4.02
!time 0:00 01-FEB-2015
time &2
horizon /source
rule x /major
horizon 15 15 /source

!===========================================



20140103

2. bur2fitscube.class
  将bur文件转换为FITS数据块(先转换为lmv文件,然后再转换为FITS),用法(假设bur文件为data.bur):
LAS90> @bur2fitscube data
=======================================
file in &1.bur
find
consistency
let name thecube
let type lmv
table ’name’ new
xy_map ’name’
vectorfits thecube.fits from thecube.lmv
=======================================

删除一个文件(假设文件叫做filename)
LAS90> sic delete filename
相当于Linux里的rm filename

创建一个文件夹(假设文件夹叫做dirname)
LAS90> sic mkdir dirname
相当于Linux里的mkdir -p dirname

将一个文件(firstfile)附加到另一个文件(filename)后面
LAS90> sic append firstfile filename
相当于Linux里的cat firstfile >> filename

改变当前路径
LAS90> sic directory dirname
相当于Linux里的cd dirname

查找某文件夹(directory)中含有某字段(string,或者说满足某判断条件,例如*.*)的所有文件
LAS90> sic find string directory
string的缺省值为*.*,directory也可缺省。
搜索结果存在名为DIR%的结构体中,DIR%NFILE是找到的文件数,DIR%FILE[1:dirnfile]是包含文件名的字符数组



20140102

CLASS脚本

1. fitscube2bur.class

  FITS数据块文件转换为bur文件,用法(假设FITS文件为data.fits):

LAS90> @fitscube2bur data

=======================================

file out &1.bur m

lmv &1.fits

=======================================

lmv能读入数据块中的数据,并写入已经打开的文件中。如果是FITS文件,lmv能自动转换格式。



20130923

      读了冯毅的程序,发现一些技巧,相当于是用IDL读FITS头文件那种操作。
LAS90> file in cs5-4_base.bur
LAS90> find
LAS90> define int f
LAS90> let f found
此句是将文件中光谱的数量(也就是found)放到变量f中。
LAS90> define integer l[f] b[f]
LAS90> for i 1 to found
LAS90:  get next
LAS90:  let l[i] off_lambda
LAS90:  let b[i] off_beta
此两句是将每条光谱的观测点坐标的两个偏移量放到两个数组里。
LAS90:  next



20130827


      偶然在SIC手册中看到了曲线拟合的程序,用起来比较简单,最简单的用法如下
SIC> define real x[10] y[10]
SIC> for i 1 to 10
SIC:  let x[i] i
SIC:  let y[i] i^2
SIC:  next
SIC> mfit y=(&A*x^2+&B*x+&C)


      另外还看到一个python命令,可以在SCI中执行python代码,但是我的CLASS没有和python一起编译,所以这个命令用不了。



20130826


      今天尝试了一下用CLASS画积分强度图。按照张智昱博士的说明画了一遍,读写数据都对,但是就是不出图,比较纳闷。
      中午碰到潘之辰,一问才知道。画图的时候要退出CLASS,进入GREG然后再画(详见CLASS极简教程http://blog.sciencenet.cn/home.php?mod=space&uid=117333&do=blog&quickforward=1&id=567008)。随后又试了一下叠画等值线图。
GREG> levels 0.2 to 2 by 0.2
GREG> rgdata /bl -1

GREG> rgmap


20130815
   
      一直以来都知道,原则上,CLASS可以当IDL用,不比IDL差,前提是能熟练掌握CLASS。之前研究过用CLASS写程序的可能性。至少知道了怎么定义变量。但是要写程序,这还是不够的。今天看了一些SIC的手册http://iram.fr/IRAMFR/GILDAS/doc/html/sic-html/sic.html,学到了更多知识,关于数组的知识是很有用的。

       正如我之前自己试验出来的,手册里说,CLASS最多支持4维数组。
定义数组(CLASS的数组指标从1开始)
DEFINE REAL A[5] B[5]
为数组赋值(比如所有元素都赋值为1,如果不赋值,每个元素都是0)

LET A[]=1
查看数组所有元素值

EXAM A
查看数组第一个元素值
EXAM A[1]
和IDL一样,可以用一个数组为另一个数组赋值
DEFINE REAL A[5] B[5,10] C[5,10,3]      
LET B[,6] = A
LET C[,10,1] = B[,3]




https://blog.sciencenet.cn/blog-117333-717052.html

上一篇:matlab工作日志
下一篇:平等的厕所——有感于今天的新闻
收藏 IP: 123.113.36.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-5-14 20:06

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部