为了弄清楚输出文件中的宽度和峰值时本征的值还是经过波束平滑的值,需要看一下输出程序中是如何处理的。在cupidgclistclump.c中可以看到
msgSetd( "V", par[ 0 ]*rms );
msgOutif( MSG__DEBUG, "", " Peak intensity: ^V", status );
……
msgSetd( "V", par[ 3 ] );
msgOutif( MSG__DEBUG, "", " FWHM on 1st axis: ^V", status );
所以还需要找到msgSed函数和msgOutif函数的定义。
在MERS (MSG and ERR) 里可以找到相应的代码。在msgSetd.c中可以看到只有一句话
void msgSetd( const char * token, double dvalue ) {
emsSetd( token, dvalue );
在ems里找到emsSetd.c,里面用到ems1Stok,找到ems1Stok.c,似乎没有特别的,所以输出的参数就是par[0]、par[3]等。所以看起来就是本征的值,但不知手册里所说选择不消除波束的影响是如何实现的。
倒是在cupidclumpdesc.c中看到
if( !deconv ) {
……
peakfactor = 1;
所以似乎是可以实现不改正波束的影响的。
https://m.sciencenet.cn/blog-117333-378093.html
上一篇:
CUPID FINDCLUMPS拟合分子云核(一)下一篇:
编程点滴(一)搜索变量名