Git Product home page Git Product logo

cloudy-grids-line-emission's Introduction

cloudy-grids-line-emission

Generates intensity of Line emission in Astrophysical plasmas as a function of Hydrogen Density and Temperature using CLOUDY


______               _ _      _   _____ _                 _       
| ___ \             | | |    | | /  __ \ |               | |      
| |_/ /_ _ _ __ __ _| | | ___| | | /  \/ | ___  _   _  __| |_   _ 
|  __/ _` | '__/ _` | | |/ _ \ | | |   | |/ _ \| | | |/ _` | | | |
| | | (_| | | | (_| | | |  __/ | | \__/\ | (_) | |_| | (_| | |_| |
\_|  \__,_|_|  \__,_|_|_|\___|_|  \____/_|\___/ \__,_|\__,_|\__, |
                                                             __/ |
                                                            |___/ 

CLOUDY version: 17.01

Using LineList.dat, line intensities of the predicted lines can be found depending on different parameters which are gridded. MPI is used for running each model on the grid in embarassingly parallel.

Version 17.01 of CLOUDY is available here: https://drive.google.com/file/d/1oroKuFMu3Mu1JcKFj-JlNMAxiRhJze6D/view?usp=sharing

Dependency: Any MPI enabled C++ compiler that supports std=c++14 flag (MPI based on c++14 compliant compiler e.g gcc-6.x)

Please be sure that CLOUDY_DATA_PATH environment variable is exported to the Cloudy database location

To compile the code in the repo, do the following:

  • Download and untar CLOUDY
  • Under the sources folder, paste the sys_mpi_gcc_custom folder provided in the repo
  • Inside the sys_mpi_gcc_custom folder type make -j <n> where <n> is the number of threads you wish to run concurrently during compilation
  • Copy all the files (exclude the folders) from sources folder and paste it in sys_mpi_gcc_custom folder
  • Also put the mpi_grid.cpp file provided in the repo in sys_mpi_gcc_custom folder
  • Now inside sys_mpi_gcc_custom folder type

mpic++ -O3 -o mycloudy_mpi.exe mpi_grid.cpp -L. -lcloudy -lm -std=c++14 -DMPI_ENABLED

  • If compilation succeeds, mycloudy_mpi.exe binary will be created
  • Copy mycloudy_mpi.exe and paste it in a folder that also has the LineList.dat file provided in the repo
  • Now from the folder run mpiexec -n <n> ./mycloudy_mpi.exe where <n> is the number of parallel processors you wish to deploy

Note that you can also run the code in serial without MPI in any c++14 compliant compiler.

For example, using g++

g++ -O3 -o mycloudy_serial.exe mpi_grid.cpp -L. -lcloudy -lm -std=c++14

You can also look up the comprehensive CLOUDY manual (provided with the package) for any customization of your own.

cloudy-grids-line-emission's People

Contributors

dutta-alankar avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.