Metadata-Version: 2.4
Name: mnpbem-mesh2d
Version: 0.1.2
Summary: 2D mesh geometry primitives for computational plasmonics meshes.
Author-email: GALIH RIDHO UTOMO <g4lihru@students.unnes.ac.id>
License-Expression: GPL-2.0-only
Project-URL: Homepage, https://pypi.org/project/mnpbem-mesh2d/
Project-URL: Repository, https://github.com/galihru/mnpbem/tree/main/mnpbem-mesh2d
Project-URL: Source, https://github.com/galihru/mnpbem
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Topic :: Scientific/Engineering :: Physics
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: numpy>=1.24

# mnpbem-mesh2d

[![PyPI version](https://img.shields.io/pypi/v/mnpbem-mesh2d.svg)](https://pypi.org/project/mnpbem-mesh2d/)
[![Python versions](https://img.shields.io/pypi/pyversions/mnpbem-mesh2d.svg)](https://pypi.org/project/mnpbem-mesh2d/)

`mnpbem-mesh2d` provides triangle geometry operators used in mesh-quality and circumcircle computations.

## Implemented Formulations
Signed doubled triangle area:

```text
A_2 = (\mathbf{d}_{12})_x(\mathbf{d}_{13})_y-(\mathbf{d}_{12})_y(\mathbf{d}_{13})_x
```

Circumcircle radius squared:

```text
R^2=\|\mathbf{p}_1-\mathbf{c}\|^2
```

Mesh quality indicator:

```text
q = 3.4641\,\frac{|A_2|}{\|\mathbf{d}_{12}\|^2+\|\mathbf{d}_{13}\|^2+\|\mathbf{d}_{23}\|^2},\quad 0\le q\le 1
```

## Implementation
- Geometry operators: `src/mnpbem_mesh2d/geometry.py`

## Dependencies
- `numpy>=1.24`

## Installation
```bash
pip install mnpbem-mesh2d
```

## Example
Runnable example:
- `examples/basic_usage.py`

Run:
```bash
python examples/basic_usage.py
```

## Author
- GALIH RIDHO UTOMO
- g4lihru@students.unnes.ac.id
