Components
All components are registered via decorators and can be extended by adding new implementations. Each component has its own page with governing equations and file location.
Solvers
The correct 1D/2D implementation is selected automatically based on your domain.
- upwind — First-order upwind advection
Time Integrators
Interface Sharpening
The correct 1D/2D implementation is selected automatically based on your domain.
Boundary Conditions
The same boundary type applies to 1D (two ends) or 2D (four edges); the code applies it per edge based on domain dimension.
Output Monitors
- console
- png
- svg
- gif — Animated GIF (single-field or comparison)
- mp4 — Animated MP4 video (same as gif)
- hdf5
- txt
- curve
Extending Components
New components are registered via decorators:
from intsharp.registry import register_solver
@register_solver("my_scheme")
def my_advect(field_values, velocity, dx, dt, bc):
# Your implementation
return updated_values
Available decorators:
@register_solver("name")@register_timestepper("name")@register_sharpening("name")@register_monitor("name")
intsharp/registry.py