Skip to content

Commit 9939f7d

Browse files
Update FAQ.md
1 parent 53b8ff2 commit 9939f7d

1 file changed

Lines changed: 17 additions & 5 deletions

File tree

FAQ.md

Lines changed: 17 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -40,13 +40,25 @@
4040

4141

4242
## What is Devito?
43-
Devito isn’t a ready-made library of seismic or wave solvers—it’s a symbolic DSL and code-generation framework for discretizing and solving arbitrary partial differential equations (PDEs). Rather than shipping you a fixed suite of “pre-canned” simulators, Devito, in short, lets you:
43+
Devito is a Python-based domain-specific language (DSL) and code generation framework for solving any system of partial differential equations (PDEs) through symbolic computation. Instead of bundling fixed “black-box” solvers, Devito empowers you to build your own, tailored to your physics and your hardware.
4444

45-
* Express your PDEs in Python using concise, SymPy-based syntax.
46-
* Automatically generate highly optimized C (and parallel MPI/OpenMP/OpenACC/CUDA/HIP/SYCL) kernels behind the scenes.
47-
* Compose your own finite-difference or other stencil schemes to target whatever physics you need—acoustics, elasticity, electromagnetics, you name it.
45+
Here’s what Devito brings to the table:
4846

49-
Yes, we include example scripts (e.g. an elastic wave solver with a free-surface boundary) to demonstrate how to build a working simulator, but those are just examples—starting points to show you how to leverage Devito’s abstractions. The engine itself has no built-in “knowledge” of waves or seismics; that lives entirely in the numerical methods you implement on top of it.
47+
1. **Symbolic PDE definitions in pure Python**
48+
Express your governing equations exactly as you would on paper, using a concise, SymPy-powered syntax—no boilerplate, no glue code.
49+
50+
2. **Automatic generation of fast, low-level code**
51+
Devito turns your high-level symbolic equations into highly optimized C/C++ code.
52+
53+
3. **Portable performance across architectures**
54+
From laptops to supercomputers: Devito targets multi-core CPUs (with OpenMP and MPI) and accelerators (CUDA, HIP, SYCL, OpenACC, and MPI) from the same source. GPU support for CUDA, HIP, and SYCL is included in [DevitoPRO](https://www.devitocodes.com/features/).
55+
56+
4. **Custom finite-difference and stencil design**
57+
Design bespoke numerical schemes for acoustics, elasticity, electromagnetics, fluid dynamics—or whatever PDE-driven physics your research demands.
58+
59+
While Devito is often associated with seismic imaging, that’s just one application domain. Our RTM and FWI examples use Devito under the hood, but the engine itself is physics-agnostic. There’s no built-in assumption about waves, seismics, or domains—you provide the physics, and Devito delivers efficient, architecture-aware implementations.
60+
61+
Focus on modeling and math—Devito handles the performance.
5062

5163

5264
## How can I see the code generated by Devito?

0 commit comments

Comments
 (0)