Metadata-Version: 2.4
Name: pushinka-rad
Version: 0.1.0
Summary: Space radiation effects library for spacecraft components. Published models, real data, pip-installable.
Author: Pushinka Photonics
License: Apache-2.0
Project-URL: Homepage, https://github.com/venticedlatte/pushinka-rad
Project-URL: Issues, https://github.com/venticedlatte/pushinka-rad/issues
Keywords: radiation,space,spacecraft,TID,SEU,photonics,CMOS,radiation-hardness
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: Scientific/Engineering :: Physics
Classifier: Topic :: Scientific/Engineering :: Astronomy
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: numpy>=1.24.0
Requires-Dist: scipy>=1.10.0
Provides-Extra: dev
Requires-Dist: pytest>=7.0; extra == "dev"
Requires-Dist: pytest-cov; extra == "dev"

# pushinka-rad

**Space radiation effects library for spacecraft components. Published models, real data, pip-installable.**

`pip install pushinka-rad`

No SPENVIS account. No Windows-only GUI. No Fortran. Just `pip install` and get answers.

## Quick Start

```python
import pushinka_rad as prad

report = prad.assess(
    orbit="LEO",
    years=15,
    shielding_mm_al=2.54,  # 100 mil Al
    components=["photonic-soi", "cmos-28nm", "fpga-rad-hard"]
)
print(report)
```

Output:

```
==============================================================================
  PUSHINKA-RAD  Space Radiation Assessment
  Mission: LEO_ISS, 400 km, 51.6 deg, 15.0 years
  Shielding: 2.54 mm Al (100 mil)
==============================================================================

  ENVIRONMENT
  --------------------------------------------------
  Total Ionizing Dose:      7.10 krad(Si)
  Dose rate:                0.4732 krad/yr
  Proton fluence:           7.10e+10 p/cm2
  Displacement damage:      7.10e+07 MeV/g
  Expected SPE events:      6

  COMPONENT ASSESSMENT
  --------------------------------------------------
  Component               Degrad%   Fail%    SEUs   Status
  ------------------------------------------------------
  Photonic SOI              0.00%    0.0%     0.0     PASS
  CMOS 28nm                 0.71%   51.3%     1.9     FAIL
  Microchip RTG4            2.37%    0.0%     0.0     PASS
==============================================================================
```

## CLI

```bash
# Assess a 15-year LEO mission
pushinka-rad assess --orbit LEO --years 15 --component photonic-soi --component cmos-28nm

# GEO communications satellite
pushinka-rad assess --orbit GEO --years 10 --component cmos-28nm --component solar-gaas

# Lunar Gateway
pushinka-rad assess --orbit LUNAR --years 5 --component fpga-rad-tolerant --component photonic-soi

# Export as JSON
pushinka-rad assess --orbit LEO --years 15 --format json -o report.json

# List available orbits and components
pushinka-rad list-orbits
pushinka-rad list-components
```

## Supported Orbits

| Preset | Altitude | Inclination | Description |
|--------|----------|-------------|-------------|
| LEO_ISS | 400 km | 51.6 deg | International Space Station |
| LEO_SSO | 700 km | 98.2 deg | Sun-synchronous (Earth observation) |
| LEO_STARLINK | 550 km | 53.0 deg | Starlink-like constellation |
| MEO_GPS | 20,200 km | 55.0 deg | GPS (radiation belt heart) |
| GEO | 35,786 km | 0.0 deg | Geostationary (comms/weather) |
| LUNAR | 100 km | 90.0 deg | Low lunar orbit (Artemis Gateway) |
| DEEP_SPACE | -- | -- | Interplanetary (GCR-dominated) |

## Supported Components

| Component | SEU? | Key metric |
|-----------|------|-----------|
| cmos-7nm through cmos-130nm | Yes | TID threshold + SEU rate per bit |
| fpga-rad-tolerant (XQRKU060) | Yes (TMR mitigated) | Config memory SEU |
| fpga-rad-hard (RTG4) | No (flash-based) | TID tolerance: 300 krad |
| photonic-soi | **No (no stored charge)** | Refractive index shift |
| photonic-sin | **No** | Wider bandgap, more tolerant than SOI |
| photonic-lnoi | **No** | Limited data, conservative model |
| mems | No | Dielectric charging |
| solar-gaas | No | NIEL displacement damage |
| solar-si | No | NIEL displacement damage |

## Why This Exists

SPENVIS requires an ESA account and a web browser. CREME96 is legacy Fortran. OMERE is Windows-only. SRIM is Windows-only. There is no lightweight Python tool that combines trapped particle models, SEU calculation, and component degradation prediction in one package.

Every number in this library traces to a published paper or datasheet. No synthetic data.

## Data Sources

| Model | Source |
|-------|--------|
| Trapped protons | AP-8 MIN, Sawyer & Vette 1976, tabulated via SPENVIS |
| Trapped electrons | AE-8 MAX, Vette 1991 |
| Dose-depth | SHIELDOSE-2, Seltzer 1994 |
| GCR protons | AMS-02, Aguilar et al. PRL 114, 2015 |
| Solar proton events | King 1974, Xapsos et al. IEEE TNS 2000 |
| CMOS SEU cross-sections | Seifert et al. IEEE TNS 59(6), 2012 |
| CMOS TID thresholds | Dodd & Massengill IEEE TNS 50(3), 2003 |
| Photonic SOI rad tolerance | Tzintzarov et al. Science Advances 10, 2024 |
| Photonic SiN rad tolerance | Grudinin et al. arXiv 1406.0297, 2014 |
| FPGA specifications | Xilinx DS893, Microchip DS0148 |
| Solar cell NIEL | Messenger et al. IEEE Trans. ED 48(9), 2001 |
| MEMS radiation effects | Shea, J. MEMS 8(3), 2009 |

## Dependencies

- numpy >= 1.24
- scipy >= 1.10

That's it. No heavy frameworks, no ITAR-restricted binaries, no network access required.

## Install

```bash
pip install pushinka-rad
```

Or from source:

```bash
git clone https://github.com/venticedlatte/pushinka-rad.git
cd pushinka-rad
pip install -e .
```

## License

Apache 2.0

## Built by

[Pushinka Photonics](https://github.com/venticedlatte/pushinka-engine)
