Domain-specific language for developing partial differential equation solvers
Project description
XGrid
Installation
pip install xgrid
Test
Invoke python3 test.py in the root folder to perform the test cases.
Usage
See document for more information. Let's start with a simple kernel, the element-wise multiplication of two grid:
import xgrid
import numpy as np
import random
xgrid.init()
fvec = xgrid.grid[float, 1]
@xgrid.kernel()
def elementwise_mul(result: fvec, a: fvec, b: fvec) -> None:
result[0] = a[0] * b[0]
and let's define some data:
a = xgrid.Grid((10000, ), float)
b = xgrid.Grid((10000, ), float)
for i in range(10000):
a[i] = random.random()
b[i] = random.random()
and the result:
result = xgrid.Grid((10000, ), float)
and invoke the kernel:
elementwise_mul(result, a, b)
We could check the result using numpy dot:
assert np.sum(result.now) == np.dot(a.now, b.now)
Examples
Solve the 2D Cavity flow with xgrid, see in examples folder.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file xgrid-0.0.4.tar.gz.
File metadata
- Download URL: xgrid-0.0.4.tar.gz
- Upload date:
- Size: 801.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
896cda071d317320965d1c5396eeef3d313b1157ecfa41935cf87aec799ca567
|
|
| MD5 |
2bd2a9ff4eb17020dba3b1e837b38975
|
|
| BLAKE2b-256 |
18f5f9f68c290a0365ff0d8903dadb13d326a0286f5d436262257f7881dbe978
|
File details
Details for the file xgrid-0.0.4-py3-none-any.whl.
File metadata
- Download URL: xgrid-0.0.4-py3-none-any.whl
- Upload date:
- Size: 26.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
580893d3c21ab11d94be5b287ae37e9cc8024797bafa1cea48cea0e53bb9eaf4
|
|
| MD5 |
a6f7dc4b87ff58400d1ace48cf3e0974
|
|
| BLAKE2b-256 |
f93f49b018ebbf2adeed32732f520b1e9ed2ee23be4bcc5c35f9fc8db0d4ae57
|