2dradiation

2D GRLMBRT code developed in the context of my PhD thesis, "General Relativistic Lattice Boltzmann Method for Radiation Transport", and my paper of the same title.

https://github.com/tom-olsen/2dradiation

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.6%) to scientific vocabulary
Last synced: 10 months ago · JSON representation ·

Repository

2D GRLMBRT code developed in the context of my PhD thesis, "General Relativistic Lattice Boltzmann Method for Radiation Transport", and my paper of the same title.

Basic Info
  • Host: GitHub
  • Owner: Tom-Olsen
  • License: mit
  • Language: C++
  • Default Branch: master
  • Homepage:
  • Size: 4.04 MB
Statistics
  • Stars: 0
  • Watchers: 2
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created over 3 years ago · Last pushed over 1 year ago
Metadata Files
Readme License Citation

Readme.txt

This repository contains the 2D GRLMBRT code developed in the context of my PhD thesis, "General Relativistic Lattice Boltzmann Method for Radiation Transport", and my paper of the same title.
Professor Luciano Rezzolla helped with the development of the theoretical framework and crucial code optimizations.
It is a standalone radiation transport code to simulate the behavior of radiation (photons and neutrinos) in the presence of a matter fluid in curved spacetime.
The code is not coupled to a matter fluid code yet, making all interactions between matter and radiation static.
The master branch is parallelized via openMP.
Tim Brohn developed the MPI branch in his Bachelor thesis, "MPI parallelization analysis of lattice Boltzmann methods for radiative transport in computational astrophysics", which allows for multi-node simulations.



How To use:
The code was developed on Linux. I have not tested it on other systems and do not guarantee it will work there.

Download with submodules:
-git clone --recurse-submodules 

Or clone first and then init submodels:
-git clone 
-git submodule init
-git submodule update

Dont forget to create the output dir and change the global output path in ControlFlow.hh

The following libraries are necessary to compile the code:
openmp:     -sudo apt-get install libomp-dev

To use the code, include the 'src/Radiation.h' in your .cpp project.
This will include all needed header files.
Examples of code usage can be found in exe/main.cpp.

To build the code, add your .cpp file in the 'CMakeLists.txt' as an executable,
and add the c++ flags to it (analogous to 'main.cpp'):
-add_executable(myCode.out exe/myCode.cpp ${srcs})
-target_compile_options(myCode.out PUBLIC -O3 -ffast-math)
-target_link_libraries(myCode.out OpenMP::OpenMP_CXX)

Then run cmake inside the build folder, and afterward the makefile:
-cd build
-cmake ..
-make 

The src folder contains all the source code, including the submodule eigen.
The exe folder contains all .cpp files that get compiled into executable .out files.
Here, you can find simple programs that contain tests for the individual modules of the code.
Have a look at these to understand the general code structure.

Owner

  • Login: Tom-Olsen
  • Kind: user

Citation (CITATION.cff)

# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!

cff-version: 1.2.0
title: >-
  2D General-Relativistic Lattice-Boltzmann Method for
  Radiation Transport
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Tom
    family-names: Olsen
    email: tomolsen1992@gmail.com
    affiliation: Frankfurt Institute for Advanced Studies
    orcid: 'https://orcid.org/0009-0002-9954-0359'
  - given-names: Luciano
    family-names: Rezzolla
    email: rezzolla@itp.uni-frankfurt.de
    affiliation: 'Institut für Theoretische Physik Goethe Universität, Frankfurt Institute for Advanced Studies, School of Mathematics Trinity College'
    orcid: 'https://orcid.org/0000-0002-1330-7103'
repository-code: 'https://github.com/Tom-Olsen/2dRadiation'
abstract: >-
  2d code that was developed as part of the samely named
  paper 'General-Relativistic Lattice-Boltzmann Method for
  Radiation Transport'.
keywords:
  - radiative transfer
  - general relativity
  - numerical physics
license: MIT
commit: Paper release
version: '1.0'
date-released: '2025-02-01'

GitHub Events

Total
  • Push event: 4
Last Year
  • Push event: 4