forked from jan/opencl_fdfd
comment fixes
This commit is contained in:
parent
9198779974
commit
efde4c4787
38
README.md
38
README.md
@ -1,14 +1,14 @@
|
||||
# opencl_fdfd
|
||||
|
||||
**opencl_fdfd** is a 3D Finite Difference Frequency Domain (FDFD)
|
||||
solver implemented in Python and OpenCL.
|
||||
electromagnetic solver implemented in Python and OpenCL.
|
||||
|
||||
**Capabilities**
|
||||
* Arbitrary distributions of the following:
|
||||
* Dielectric constant (epsilon)
|
||||
* Magnetic permeabilty (mu)
|
||||
* Perfect electric conductor (PEC)
|
||||
* Perfect magnetic conductor (PMC)
|
||||
* Dielectric constant (```epsilon```)
|
||||
* Magnetic permeabilty (```mu```)
|
||||
* Perfect electric conductor (```PEC```)
|
||||
* Perfect magnetic conductor (```PMC```)
|
||||
* Variable-sized rectangular grids
|
||||
* Stretched-coordinate PMLs (complex cell sizes allowed)
|
||||
|
||||
@ -16,13 +16,14 @@ Currently, only periodic boundary conditions are included.
|
||||
PEC/PMC boundaries can be implemented by drawing PEC/PMC cells near the edges.
|
||||
Bloch boundary conditions are not included but wouldn't be very hard to add.
|
||||
|
||||
The default solver (opencl_fdfd.cg_solver(...)) located in main.py implements
|
||||
the E-field wave operator directly (ie, as a list of OpenCL instructions
|
||||
rather than a matrix). Additionally, there is a slower (and slightly more
|
||||
versatile) solver in csr.py which attempts to solve an arbitrary sparse
|
||||
matrix in compressed sparse row (CSR) format using the same conjugate gradient
|
||||
method as the default solver. The CSR solver is significantly slower, but can
|
||||
be very useful for testing alternative formulations of the FDFD wave equation.
|
||||
The default solver ```opencl_fdfd.cg_solver(...)``` located in main.py
|
||||
implements the E-field wave operator directly (ie, as a list of OpenCL
|
||||
instructions rather than a matrix). Additionally, there is a slower
|
||||
(and slightly more versatile) solver in ```csr.py``` which attempts to solve
|
||||
an arbitrary sparse matrix in compressed sparse row (CSR) format using
|
||||
the same conjugate gradient method as the default solver. The CSR solver
|
||||
is significantly slower, but can be very useful for testing alternative
|
||||
formulations of the FDFD electromagnetic wave equation.
|
||||
|
||||
Currently, this solver only uses a single GPU or other OpenCL accelerator;
|
||||
generalization to multiple GPUs should be pretty straightforward
|
||||
@ -47,11 +48,12 @@ pip install git+https://mpxd.net/gogs/jan/opencl_fdfd.git@release
|
||||
|
||||
## Use
|
||||
|
||||
See the documentation for opencl_fdfd.cg_solver(...)
|
||||
(located in main.py) for details about how to call the solver.
|
||||
See the documentation for ```opencl_fdfd.cg_solver(...)```
|
||||
(located in ```main.py```) for details about how to call the solver.
|
||||
|
||||
An alternate (slower) FDFD solver and a general gpu-based sparse matrix
|
||||
solver is available in csr.py . These aren't particularly well-optimized,
|
||||
and something like [MAGMA](http://icl.cs.utk.edu/magma/index.html) would
|
||||
probably be a better choice if you absolutely need to solve arbitrary
|
||||
sparse matrices and can tolerate writing and compiling C/C++ code.
|
||||
solver is available in ```csr.py```. These aren't particularly
|
||||
well-optimized, and something like
|
||||
[MAGMA](http://icl.cs.utk.edu/magma/index.html) would probably be a
|
||||
better choice if you absolutely need to solve arbitrary sparse matrices
|
||||
and can tolerate writing and compiling C/C++ code.
|
||||
|
@ -1,9 +1,10 @@
|
||||
"""
|
||||
opencl_fdfd OpenCL 3D FDFD solver
|
||||
|
||||
opencl_fdfd is a 3D Finite Difference Frequency Domain (FDFD) solver implemented in
|
||||
Python and OpenCL. Its capabilities include:
|
||||
opencl_fdfd is a 3D Finite Difference Frequency Domain (FDFD) electromagnetic
|
||||
solver implemented in Python and OpenCL.
|
||||
|
||||
Its capabilities include:
|
||||
- Arbitrary distributions of the following:
|
||||
- Dielectric constant (epsilon)
|
||||
- Magnetic permeabilty (mu)
|
||||
|
Loading…
Reference in New Issue
Block a user