merlin-spectra


Namemerlin-spectra JSON
Version 0.0.4 PyPI version JSON
download
home_pageNone
SummaryInterface with Cloudy Photoionization Software data and RAMSES-RT Simulation data to create galaxy images and spectra in nebular emission lines.
upload_time2025-07-28 14:45:35
maintainerNone
docs_urlNone
authorNone
requires_python>=3.10
licenseNone
keywords jwst astrophysics spectra
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Merlin

## Nebular Line Emission Diagnostics from Cosmological Simulations of 
## Early Universe Galaxies.

Author: Braden Nowicki
Advisor: Dr. Massimo Ricotti

Interface with Cloudy Photoionization Software data and RAMSES-RT Simulation
data to create galaxy images and spectra in nebular emission lines.


### File Structure:

MERLIN

merlin/ : primary package for analysis and visualizations
CloudyFiles/ : files related to Cloudy grid runs.
Reference/ : previously-developed analysis code.

#### Creating a Line List with Cloudy

The Cloudy Photoionization Code is used to generate line emission (flux)
throughout the desired parameter space. We consider gas parameters
Ionization Parameter, Hydrogen Number Density, and Temperature.
A simple grid run is performed, simulating emission for lines present in
CloudyFiles/gridrun/LineList_NebularO.dat and
CloudyFiles/gridrun/LineList_NebularCN.dat (can be adjusted)
from a 1 cm thick gas cell. The exact conditions can be adjusted (the star
SED, for instance) for a given run; a simulation for every combination of the
varying parameters is performed. Line list data is output in
'LineList_NebularCN.dat' and 'LineList_NebularO.dat', then combined into a
single 'linelist.dat' file via 'combine_tables.py'.

See CloudyFiles/gridrun. interp6.in is the input file. The run file (with
executable privilege) can be used in your installation of Cloudy.
For instance, in the terminal, './run interp6' would run the desired
simulations (note that grid runs require the use of the -r option, present
in 'run', and therefore the input file is given as interp6, ommitting .in.)

#### Running Merlin on RAMSES-RT Output Data

'main.py' outlines the process: create derived field functions; load
the simulation given by the filepath (as a command line argument) pointing to
the info_*.txt file within an output folder; instantiate an
EmissionLineInterpolator object for the derived flux and luminosity
fields using the desired 'linelist.dat' table; instantiate a
VisualizationManager object; and run the desired routines/analysis for the
time slice.

The class structures allow for easy testing of new features and updates.
One must call save_sim_info() for Object variables like current_redshift
to be created; afterwards, any function can be called in a modular fashion.
There are some exceptions: phase_with_profiles(), for instance, uses
an object generated by phase_plot().


#### Running in the Cluster on Multiple Time Slices
With the desired routines and field setup chosen in a driver script
like 'main.py', analysis can be performed on multiple time slices in parallel.
For RAMSES-RT output data stored in a cluster, use scp to copy merlin,
a driver script like 'main.py', and a shell script like 'analysis.sh'
to the cluster scratch space. Test that it works in the scratch space by
running 'main.py' on one time slice. You must first perform the module loads
and pip installs at the beginning of 'main.py' for the dependencies.
The shell script 'analysis.sh' shows one way to run the script on
multiple time slices in parallel (in one job).

#### Bulk Analysis of Multiple Time Slices


#### A Note on the Naming of this Code

The Merlin is a small species of falcon from the Northern Hemisphere.
The naming of this package is inspired by the Merlin's exceptionally sharp
eyesight; we generate observational diagnostics from simulated distant,
high-redshift galaxies. Birds are a bellwether of environmental decline;
populations are down nearly 3 billion birds since 1970. Please consider
supporting local efforts to safeguard birds, their migration, and their
habitats.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "merlin-spectra",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "JWST, astrophysics, spectra",
    "author": null,
    "author_email": "Braden Nowicki <bnowicki@terpmail.umd.edu>",
    "download_url": "https://files.pythonhosted.org/packages/0e/8e/7a8ef58ac87e3ca96d248b0eba2408d810231a428d2be7c15f34d23c18a1/merlin_spectra-0.0.4.tar.gz",
    "platform": null,
    "description": "# Merlin\n\n## Nebular Line Emission Diagnostics from Cosmological Simulations of \n## Early Universe Galaxies.\n\nAuthor: Braden Nowicki\nAdvisor: Dr. Massimo Ricotti\n\nInterface with Cloudy Photoionization Software data and RAMSES-RT Simulation\ndata to create galaxy images and spectra in nebular emission lines.\n\n\n### File Structure:\n\nMERLIN\n\nmerlin/ : primary package for analysis and visualizations\nCloudyFiles/ : files related to Cloudy grid runs.\nReference/ : previously-developed analysis code.\n\n#### Creating a Line List with Cloudy\n\nThe Cloudy Photoionization Code is used to generate line emission (flux)\nthroughout the desired parameter space. We consider gas parameters\nIonization Parameter, Hydrogen Number Density, and Temperature.\nA simple grid run is performed, simulating emission for lines present in\nCloudyFiles/gridrun/LineList_NebularO.dat and\nCloudyFiles/gridrun/LineList_NebularCN.dat (can be adjusted)\nfrom a 1 cm thick gas cell. The exact conditions can be adjusted (the star\nSED, for instance) for a given run; a simulation for every combination of the\nvarying parameters is performed. Line list data is output in\n'LineList_NebularCN.dat' and 'LineList_NebularO.dat', then combined into a\nsingle 'linelist.dat' file via 'combine_tables.py'.\n\nSee CloudyFiles/gridrun. interp6.in is the input file. The run file (with\nexecutable privilege) can be used in your installation of Cloudy.\nFor instance, in the terminal, './run interp6' would run the desired\nsimulations (note that grid runs require the use of the -r option, present\nin 'run', and therefore the input file is given as interp6, ommitting .in.)\n\n#### Running Merlin on RAMSES-RT Output Data\n\n'main.py' outlines the process: create derived field functions; load\nthe simulation given by the filepath (as a command line argument) pointing to\nthe info_*.txt file within an output folder; instantiate an\nEmissionLineInterpolator object for the derived flux and luminosity\nfields using the desired 'linelist.dat' table; instantiate a\nVisualizationManager object; and run the desired routines/analysis for the\ntime slice.\n\nThe class structures allow for easy testing of new features and updates.\nOne must call save_sim_info() for Object variables like current_redshift\nto be created; afterwards, any function can be called in a modular fashion.\nThere are some exceptions: phase_with_profiles(), for instance, uses\nan object generated by phase_plot().\n\n\n#### Running in the Cluster on Multiple Time Slices\nWith the desired routines and field setup chosen in a driver script\nlike 'main.py', analysis can be performed on multiple time slices in parallel.\nFor RAMSES-RT output data stored in a cluster, use scp to copy merlin,\na driver script like 'main.py', and a shell script like 'analysis.sh'\nto the cluster scratch space. Test that it works in the scratch space by\nrunning 'main.py' on one time slice. You must first perform the module loads\nand pip installs at the beginning of 'main.py' for the dependencies.\nThe shell script 'analysis.sh' shows one way to run the script on\nmultiple time slices in parallel (in one job).\n\n#### Bulk Analysis of Multiple Time Slices\n\n\n#### A Note on the Naming of this Code\n\nThe Merlin is a small species of falcon from the Northern Hemisphere.\nThe naming of this package is inspired by the Merlin's exceptionally sharp\neyesight; we generate observational diagnostics from simulated distant,\nhigh-redshift galaxies. Birds are a bellwether of environmental decline;\npopulations are down nearly 3 billion birds since 1970. Please consider\nsupporting local efforts to safeguard birds, their migration, and their\nhabitats.\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Interface with Cloudy Photoionization Software data and RAMSES-RT Simulation data to create galaxy images and spectra in nebular emission lines.",
    "version": "0.0.4",
    "project_urls": {
        "Homepage": "https://github.com/BradenN6/Merlin"
    },
    "split_keywords": [
        "jwst",
        " astrophysics",
        " spectra"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "743d5ae2023e4dd1fcf08d68d86d79b3b9e05763bf03eb10b288c19f65afb972",
                "md5": "5257acd220ddd7c6a6d9996e31ad654b",
                "sha256": "4d6b1e0d42a09fce2ecd6977ce1799feb2385a64f82d04101017810bbb0dcde4"
            },
            "downloads": -1,
            "filename": "merlin_spectra-0.0.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "5257acd220ddd7c6a6d9996e31ad654b",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 3517084,
            "upload_time": "2025-07-28T14:45:34",
            "upload_time_iso_8601": "2025-07-28T14:45:34.422452Z",
            "url": "https://files.pythonhosted.org/packages/74/3d/5ae2023e4dd1fcf08d68d86d79b3b9e05763bf03eb10b288c19f65afb972/merlin_spectra-0.0.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "0e8e7a8ef58ac87e3ca96d248b0eba2408d810231a428d2be7c15f34d23c18a1",
                "md5": "f319019bc905a251824b095806ebd734",
                "sha256": "2dd66b5489a52cef1aef25bec1080af0a3980276bc728247c688d362dda7de42"
            },
            "downloads": -1,
            "filename": "merlin_spectra-0.0.4.tar.gz",
            "has_sig": false,
            "md5_digest": "f319019bc905a251824b095806ebd734",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 3401782,
            "upload_time": "2025-07-28T14:45:35",
            "upload_time_iso_8601": "2025-07-28T14:45:35.871262Z",
            "url": "https://files.pythonhosted.org/packages/0e/8e/7a8ef58ac87e3ca96d248b0eba2408d810231a428d2be7c15f34d23c18a1/merlin_spectra-0.0.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-28 14:45:35",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "BradenN6",
    "github_project": "Merlin",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "merlin-spectra"
}
        
Elapsed time: 0.97932s