Luna-Rust.jl
Fuente:
Zenodo
Salvato in:
| Autori principali: | , , |
|---|---|
| Natura: | Recurso digital |
| Pubblicazione: |
Zenodo
2026
|
| Accesso online: | |
| Tags: |
Aggiungi Tag
Nessun Tag, puoi essere il primo ad aggiungerne!!
|
| _version_ | 1866902160215638016 |
|---|---|
| author | Valenzuela Berríos, Diego Andrés Brahms, Christian Travers, John C. |
| author_facet | Valenzuela Berríos, Diego Andrés Brahms, Christian Travers, John C. |
| contents | <h1>Release v0.7.0 — Rust-Accelerated Backend & Python Wrapper</h1> <p>This release introduces major performance and usability improvements to the Luna simulation suite, including a high-performance Rust core, a native Python wrapper, and customizable material properties.</p> <h2>What's New</h2> <h3>Rust-Accelerated Backend (<code>luna-rust</code>)</h3> <ul> <li>Migrated core waveguide solvers and numerical integration algorithms to a stateless, cache-aligned Rust codebase.</li> <li>Added multithreaded diffraction (QDHT) solver support via <code>rayon</code>.</li> <li>Implemented zero-copy C-FFI memory boundaries for seamless in-place data transfer between Julia and Rust.</li> </ul> <h3>Native Python API</h3> <ul> <li>Released a pip-installable python package <code>luna-rust</code> under <code>python/</code>.</li> <li>Embedded Julia interface calls using <code>juliacall</code> and <code>juliapkg</code>.</li> <li>Built a zero-copy NumPy array wrapper <code>LunaOutput</code> to convert simulation output vectors on-the-fly.</li> </ul> <h3>Dynamic Material Properties</h3> <ul> <li>Added a global material registry with runtime registration APIs (<code>register_material!</code>) for gases and glasses.</li> <li>Enabled loading custom Sellmeier configurations from TOML files without modifying package source code.</li> </ul> <h3>Spelled-Out Greek Keyword Aliases</h3> <ul> <li>Supported ASCII keyword arguments (e.g., <code>lambda0</code>, <code>tau_fwhm</code>, <code>phi</code>) interchangeably with Unicode keywords (<code>λ0</code>, <code>τfwhm</code>, <code>ϕ</code>) across all pulse constructors and entrypoints.</li> </ul> <h3>Parallelized CI Pipeline</h3> <ul> <li>Restructured the 31-test-set suite into 5 parallel job groups (<code>physics</code>, <code>simulation</code>, <code>io</code>, <code>fields</code>, <code>rust</code>), reducing CI wall-clock validation times from 32 minutes down to ~8 minutes.</li> </ul> |
| format | Recurso digital |
| id | zenodo_https___doi_org_10_5281_zenodo_20359893 |
| institution | Zenodo |
| language | |
| publishDate | 2026 |
| publisher | Zenodo |
| record_format | zenodo |
| spellingShingle | Luna-Rust.jl Valenzuela Berríos, Diego Andrés Brahms, Christian Travers, John C. <h1>Release v0.7.0 — Rust-Accelerated Backend & Python Wrapper</h1> <p>This release introduces major performance and usability improvements to the Luna simulation suite, including a high-performance Rust core, a native Python wrapper, and customizable material properties.</p> <h2>What's New</h2> <h3>Rust-Accelerated Backend (<code>luna-rust</code>)</h3> <ul> <li>Migrated core waveguide solvers and numerical integration algorithms to a stateless, cache-aligned Rust codebase.</li> <li>Added multithreaded diffraction (QDHT) solver support via <code>rayon</code>.</li> <li>Implemented zero-copy C-FFI memory boundaries for seamless in-place data transfer between Julia and Rust.</li> </ul> <h3>Native Python API</h3> <ul> <li>Released a pip-installable python package <code>luna-rust</code> under <code>python/</code>.</li> <li>Embedded Julia interface calls using <code>juliacall</code> and <code>juliapkg</code>.</li> <li>Built a zero-copy NumPy array wrapper <code>LunaOutput</code> to convert simulation output vectors on-the-fly.</li> </ul> <h3>Dynamic Material Properties</h3> <ul> <li>Added a global material registry with runtime registration APIs (<code>register_material!</code>) for gases and glasses.</li> <li>Enabled loading custom Sellmeier configurations from TOML files without modifying package source code.</li> </ul> <h3>Spelled-Out Greek Keyword Aliases</h3> <ul> <li>Supported ASCII keyword arguments (e.g., <code>lambda0</code>, <code>tau_fwhm</code>, <code>phi</code>) interchangeably with Unicode keywords (<code>λ0</code>, <code>τfwhm</code>, <code>ϕ</code>) across all pulse constructors and entrypoints.</li> </ul> <h3>Parallelized CI Pipeline</h3> <ul> <li>Restructured the 31-test-set suite into 5 parallel job groups (<code>physics</code>, <code>simulation</code>, <code>io</code>, <code>fields</code>, <code>rust</code>), reducing CI wall-clock validation times from 32 minutes down to ~8 minutes.</li> </ul> |
| title | Luna-Rust.jl |
| url | https://doi.org/10.5281/zenodo.20359893 |