# API Documentation

The FDTDX API is organized into several main components:

## Core Package
The [Core](core/index.md) package provides fundamental data structures and utilities:
- Configuration management
- JAX integration
- Array operations
- Distributed computing support

## Constraints
The [Constraints](constraints/index.md) package handles material and geometry constraints:
- Material property mapping
- Feature size control
- Connectivity constraints
- Binary operations

## Objects
The [Objects](objects/index.md) package defines simulation components:
- Material definitions
- Sources and detectors
- Boundary conditions
- Object positioning

## Physics
The [Physics](physics/index.md) package implements electromagnetic calculations:
- Physical constants
- Material properties
- Field metrics
- Mode solvers

## FDTD
The [FDTD](fdtd/index.md) package provides simulation algorithms:
- Forward/backward propagation
- FDTD implementations
- Field updates
- Curl operations

## Utilities
The [Utilities](utils/index.md) package contains support functions:
- Visualization tools
- File conversion
- Image processing
- Debugging utilities
