最近重新安装一遍CAMB,正好以自己的安装过程来写一个教程,希望对后来者有帮助

文章目录

  • 1 CAMB
    • 1.1 CAMB安装
    • 1.2 CAMB简单应用
      • 1.2.1 使用CAMB画功率谱
  • 2 CosmoMC
    • 2.1 CosmoMC安装
    • 2.1 CosmoMC使用
  • 3 常见问题
    • 3.1 mpirun detected that one or more processes exited with non-zero status, thus causing...

1 CAMB

1.1 CAMB安装

参考githubCAMB
步骤如下:

  1. 1,使用命令git clone --recursive https://github.com/cmbant/CAMB拷贝到自己需要安装的目录下(笔者在工作路径下新建了一个名为CAMB的目录)
  2. 2 ,进入下载的目录下,使用命令pip install -e .
  3. 3 , 使用命令python setup.py make,这需要安装gfortran,如果没有安装,可以通过sudo apt-get install gfortran来安装,并通过gfortran --version查看是否安装成功,如果显示版本则成功。
  4. 4,完成上面两步已经结束了安装,现在测试,(注意python版本的camb已经将camb作为一个命令名,所以可以直接使用camb执行命令),测试代码为camb inifiles/planck_2018.ini,(这里,由于输出会产生大量文件,所以我新建了一个名为test的目录,在目录里面运行camb ../inifiles/planck_2018.ini),如果正确产生下图文件,则安装成功

    另外值得一提的是,这个python版本的CAMB是可以使用python程序的,demo见python camb demo

1.2 CAMB简单应用

1.2.1 使用CAMB画功率谱

可以参考官网的readme-fortran文档除了上面的1.1节提到的demo之外,这里主要讲fortran版本的例子。以前在网易博客上写过一篇简单应用的博文-使用CAMB画功率谱。但是网易博客似乎倒闭了,所以图片无法识别,这里不打算再次重复上面说的博文的过程(博文没有了图片,但是大致是可以猜到说什么的)。此时不需要再用./camb params.ini编译,而是直接使用camb params.ini来编译,因为camb在python版中已经成为一个命令。同样,运行之后会生成很多文件,所以我是在test目录下运行的。

2 CosmoMC

2.1 CosmoMC安装

这个安装之前要先安装依赖的库,过程很复杂,所幸有参考文献,一下是四篇最主要的参考来源(主要参考前三篇):
1, 星空下
2, Ming-Hua Li的论文
3,CosmoMC官网readme
4, planck_likelihood_CosmoMC_readme
这里在上面的参考文献上做补充:

  • 1, 关于intel Fortran编译器,网址为intel software tool,这里我直接选择了student,因为student是免费的,所以需要以学生邮箱和学校注册验证通过后才会邮箱收到信息,然后下载这个软件。注册的过程为:点击intel@parallel studio XE下的linux(选择符合自己的系统,笔者是linux),然后全画勾进入注册界面
  • 2,在文献1中的第2部分,一定要注意文中所说的lapack的问题,安装ifort的时候如果自己的电脑是64位,那么在安装的过程中要选择64的选项。也就是安装的过程中有选择IA 32和64的时候选择32(因为它前面是x号,选择表示去掉),安装的时候会看到说找不到32表示已经选了64了。
  • 3 文献1中的第5部分:./waf configure --lapack_mkl=${MKLROOT} --install_all_deps时,如果输出结果找不到cfitsi,则要自己指定:如./waf configure --lapack_mkl=${MKLROOT} --install_all_deps --cfitsio_prefix=/home/username/software/cfitsi 这里cfitsi是自己安装的cfitsi路径(文献1的作者已经做了修改),安装他的提示可以完成。
  • 4 文献2中的F部分,plc (planck likelihood and Chains)(文献1也提到plc-2,笔者用的3.01)参考planck似然,也可以直接下载COM_Likelihood_code(有3.0和3.01的版本),已经不需要像F中提到的那样再进入plc中vi Makefile改内容,这部分直接参考文献1即可。(下载的时候有一个技巧:点击页面框后面的链接按钮,选择wget,然后使用wget终端下载即可)
  • 5 由于很多软件已经更新,所以笔者使用的版本都比1和2文中提到的版本高
  • 6 文献1中提到的plc_2.0,这里笔者使用COM_Likelihood_Data-baseline_3.0

安装遇到的问题:

./cosmomc: relink ‘xxx/intel/compilers_and_xx/libirc.so’ with ‘/lib/x86_64-linux-gnu/libc.so.6’ for IFUNC symbol ‘memmove’
这个问题是由于plc-3.01没有正确指定路径造成的,可以重新装一遍plc

Acknowledgements

花了两天时间终于安装完了,感谢文献1中作者的帮助, 如有必要,再写CosmoMC的使用

2.1 CosmoMC使用

**1)编译 **

make all

(如果有改动要重新编译可以使用make clean, make delete删除编译过的文件)

2) 修改test.ini文件,增加或注释数据
使用planck15年的数据,注释18年的数据

3)运行cosmoMC

mpirun -np 4 ./cosmomc test.ini  使用4个进程

4)查看结果
为了防止产生的文件过多比较乱,在CosmoMC目录下建一个名为plot_data的文件夹,将disttest.ini文件中做如下修改:

运行:

./getdist disttest.ini

得到的文件包括如下

要画二,三维图使用python

python test_tri.py
python test_2D.py


也可以使用python来画图,指定输出的参数----参考文献arXiv:1808.05080第V部分
为防止文件混乱,在CosmoMC下建立一个名为pytest的文件夹,在文件夹下创建名为disttest.py的文件,内容为:

from getdist import plots, MCSamples
f=plots.getSubplotPlotter(chain_dir='../chains/',width_inch=12)
f.triangle_plot('test',['omegabh2','omegach2','H0','logA','ns'],filled=True,legend_labels=['PlanckTT}'], legend_loc='upper right',line_args=[{'lw':1, 'color':'darkblue'}], contour_colors=['darkgreen'])
f.export('mymodel_cmb_tri.pdf')

使用python运行即可得到参数限制情况

3 常见问题

3.1 mpirun detected that one or more processes exited with non-zero status, thus causing…


问题描述,使用了planck 18年的数据,clik链接的是18年的。在/cosmoMC/CosmoMC/data$路径下ll click*查看到的是如下的链接

plc_3.0是planck likelihood code 2018
而我在test.ini将planck 的数据使用的是2015年的(即batch2的数据,注batch3是18年的)

此时导致链接出了问题。简言之,使用了15年数据,却链接的是18年code。
解决方法:链接15年code
打开batch2/lowl.ini,有如下描述:

即15年的code是用的链接名是clik,而18年使用的是clik_14.0,所以现在将plc_2.0链接到CosmoMC/data下,并命名为click,命令如下

ln -s /home/username/xxx/data/plc_2.0/ CosmoMC/data/clik   #这里code要使用绝对路径

CAMB, CosmoMC的安装和使用相关推荐

  1. CosmoMC命令CAMB文件画功率谱

    CosmoMC命令CAMB文件画功率谱 画功率谱步骤: 1)进入software文件夹,解压CAMB-Nov2016.tar.gz文件 2)进入刚建立的文件夹CAMB-Nov2016文件夹,vim M ...

  2. healpy的安装(包括healpix)

    参考的文献为:https://arxiv.org/pdf/1409.1354.pdf 安装healpy比较复杂,建议先用pip安装试试,如果不成功再进行复杂的安装.pip直接安装为pip instal ...

  3. 张量功率谱CAMB参数调试

    (对应的原始tm文章在CMB\CosmoMC\camb\power spectra下,名为:primordial_power_spectrum_analysis.tm) 上图是在导入数据后再绘图的,m ...

  4. linux环境下nacos的安装+启动,阿里云服务器安装nacos

    nacos安装+启动(linux环境): 基础:安装java环境 官网下载压缩包:如 nacos-server-1.2.1.tar.gz 放在自定义目录下 # 解压 tar -xvf nacos-se ...

  5. Alibaba Cloud Linux 2.1903 LTS 64位服务器yum源下载404,Alibaba Cloud Linux 2实例中使用docker-ce、epel等YUM源安装软件失败

    [Alibaba Cloud Linux 2.1903 LTS 64位]服务器yum源下载404 failure: repodata/repomd.xml from docker-ce-stable: ...

  6. Linux下docker安装配置oracle,oracle创建用户并远程连接,实测可用!

    最近在给同学弄毕业设计的数据库,因为oracle在个人电脑上极不稳定,所以他的电脑数据库崩溃了,这时候我就在docker上为他拉了一个oracle,解决了问题. docker的安装共有以下几步,实测没 ...

  7. 在docker上安装部署tomcat项目 超简单,拿来主义

    在docker中部署tomcat,非常简单,而且省去了手动安装jdk等步骤,只需要将war包复制在容器tomcat实例中的webapps下面即可.以下将详细讲解流程: 在windows中打好包以后用w ...

  8. docker一步安装mysql,docker的魅力就在于此

    正常来说,使用docker安装东西的步骤是serach它有没有,然后pull它 这里其实只要一步(如果你没有安装过.没有端口占用等问题的话!!) $ docker run -d -p 3306:330 ...

  9. Linux下tomcat的安装与卸载以及配置(超简单)

    无敌简单的几步 1.安装 //首先你需要下载好tomcat包 sudo tar -xvzf apache-tomcat-7.0.85.tar.gz(这里是包名) -C 你要放的位置 2.卸载 rm - ...

最新文章

  1. 在pycharm中安装第三方库
  2. mysql选择行_在mysql中选择特殊行
  3. C# .NET Web API 如何自訂 ModelBinder
  4. 【整理】PP 成本收集器简介
  5. python的dll文件在哪_Python运行DLL文件的方法
  6. 海量数据处理分析(部分)
  7. 锯木棍(51Nod-2143)
  8. php 和 apache的关系
  9. MySQL server has gone away报错原因分析
  10. 二级c语言试卷合集pdf,全国计算机二级C语言历年真题完整版.pdf
  11. 《MFC 控件透明处理》
  12. bat 实现笔记本键盘开关
  13. 宏碁笔记本一键重装win7系统教程
  14. 发布、发版、上线流程
  15. 总结2016年国内外的AR/VR产品
  16. 小球自由落体及碰撞反弹
  17. 7-3 电话聊天狂人 (25 分)
  18. Chrome谷歌离线下载夜间模式插件及安装(链接)
  19. docker安装rabbitMQ stomp插件
  20. 最优打字策略 java_打字练习Java程序,求高手完善!30 爱问知识人

热门文章

  1. 为什么我们的信标信号被干扰?
  2. 浅谈python语言_浅谈Python语言基础知识点!
  3. node.js express php,nodejs开发——express路由与中间件
  4. 一个c加一个g是什么牌子_一个G的流量60块钱,为什么会这么贵?
  5. 电源稳定性测试软件,电源测试:电源设计的稳定性测量
  6. css好用吗,比较好用的 CSS 的技巧,总有一个你需要的!
  7. 高速串行总线设计基础(五)揭秘SERDES高速面纱之多相数据提取电路与线路编码方案
  8. 【 FPGA 】时序分析中的基本概念和术语
  9. 【 FPGA 】FIR 滤波器之Single-rate FIR滤波器的系数数据(Filter Coefficient Data)
  10. 访问centos端口