[![Documentation Status](https://readthedocs.org/projects/a-fmm/badge/?version=latest)](https://a-fmm.readthedocs.io/en/latest/?badge=latest)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![MIT](https://img.shields.io/github/license/gdsfactory/gdsfactory)](https://choosealicense.com/licenses/mit/)

# A-FMM

This is a Python implementation the Aperiodic-Fourier Modal Method, a fully vectorial method for solving Maxwell equations that combines a Fourier-based mode solver and a scattering matrix recursion algorithm to model full 3D structures. This approach is well suited to calculate modes, transmission, reflection, scattering and absorption of multi-layered structures. Moreover, support for Bloch modes of periodic structures allows for the simulation of photonic crystals or waveguide Bragg gratings.

## Installation
You can install A_FMM directly from pypi by running:

    pip install A_FMM


## Documentation
Full documentation is available on [Read the Docs](https://a-fmm.readthedocs.io)

