rayleighmc

Rayleigh scattering simulation for anisotropic liquids

https://github.com/ymtheory/rayleighmc

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 (9.4%) to scientific vocabulary

Keywords

montecarlo-simulation
Last synced: 6 months ago · JSON representation ·

Repository

Rayleigh scattering simulation for anisotropic liquids

Basic Info
  • Host: GitHub
  • Owner: YMTheory
  • Language: Makefile
  • Default Branch: main
  • Homepage:
  • Size: 290 KB
Statistics
  • Stars: 0
  • Watchers: 2
  • Forks: 2
  • Open Issues: 1
  • Releases: 0
Topics
montecarlo-simulation
Created about 4 years ago · Last pushed over 3 years ago
Metadata Files
Readme Citation

README.md

RayleighMC

Author: Miao Yu -> miaoyu@whu.edu.cn

MC program for angular / polarisation simulation of Rayleigh scattered photons of anisotropic molecules.

Python scripts have been implemented and validated for toy study and algorithm development.

A simple Geant4 package has been implemented in dir "./Ray".

Implementations:

PYTHON: - Rayleigh_class : a class describing Rayleigh scattering for single photon.

- Polarisation and momentum of the incident photon need to be specified. 

- Depolarization ratio is required as a material property for calculation.

- Functions: 

  1) calculatePol / calculatePol_modified: given certain scattering direction before, calculate polarization of scattered photons.

  2) sampleMomPol / sampleMomPol_modified: sample momentum and polarization of scattered photons.
  • detector: describing the physical properties of an ideal detector. The most important one is the detection polarisation direction by using "set_detPol()".

GEANT4:

Geant4 codes are implemented in dir "G4Test/" where a Geant4.10.04 version software has been used.

  • geometry: a simple sample was placed at center with customed Rayleigh scattering length (RAYLEIGH) and penpendicularly polarized depolarization ratio (RHOV); A 4Pi sensitive detector surrounds the sample outside to detect photons and give the angular/polarization information.
  • Optical process: a customed RayleighScattering class has been implemented to sample scattered photons for anisotropic liquids. (MatrixCalc class has been added for matrix and vector calcualtion in new class);
  • analyser: save root files of simulation fo analysis.

Tools for matrix calculation:

  • vector_method.py : return perpendicular vector
  • calculateRotationMatrix.py : some matrix calculation

Usage:

  • example1.py : for isotropic molecules. Detect scatterred light at certain direction with polariser.
  • example2.py : for anisotropic molecules. Detect scatterred light at certain direction with polariser. Validate Hh angular distribution.
  • example3.py : at Phi=270 deg, check if the rho_v == Hv/Vv for different input rhov.
  • example4.py : compare MC sim and measurement data.
  • example5.py : sample scattered photons of anisotropic liquids.

For Geant4 codes, entering Ray/build, using "./exampleRay photon.mac" to generate events and get output root file for analysis.

Owner

  • Name: YMTheory
  • Login: YMTheory
  • Kind: user

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Yu"
  given-names: "Miao"
  orcid: "https://orcid.org/0000-0002-2540-762X"
- family-names: "Zhou"
  given-names: "Xiang"
  orcid: "https://orcid.org/0000-0002-6908-683X"
title: "RayleighMC"
version: 1.0.0
doi: 10.5281/zenodo.1234
date-released: 2022-06-01
url: "https://github.com/YMTheory/RayleighMC"

GitHub Events

Total
Last Year