-
Notifications
You must be signed in to change notification settings - Fork 4
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Incorporate triangle doc * Update derivation * Add Support Matrix and API pages * Remove external references
- Loading branch information
1 parent
7523e91
commit d0248d3
Showing
6 changed files
with
93 additions
and
72 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,18 @@ | ||
using Documenter | ||
using MeshIntegrals | ||
|
||
makedocs(sitename="MeshIntegrals.jl Documentation") | ||
makedocs( | ||
sitename="MeshIntegrals.jl", | ||
pages = [ | ||
"Home" => [ | ||
"About" => "index.md", | ||
"Support Matrix" => "supportmatrix.md" | ||
], | ||
"Derivations" => [ | ||
"Integrating a Triangle" => "triangle.md" | ||
], | ||
"Public API" => "api.md" | ||
] | ||
) | ||
|
||
deploydocs(repo = "github.com/mikeingold/MeshIntegrals.jl.git") |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
# Public API | ||
|
||
## Integrals | ||
|
||
```@docs | ||
MeshIntegrals.integral | ||
``` | ||
|
||
### Aliases | ||
|
||
```@docs | ||
MeshIntegrals.lineintegral | ||
MeshIntegrals.surfaceintegral | ||
MeshIntegrals.volumeintegral | ||
``` | ||
|
||
## Integration Algorithms | ||
|
||
```@docs | ||
MeshIntegrals.GaussKronrod | ||
MeshIntegrals.GaussLegendre | ||
MeshIntegrals.HAdaptiveCubature | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
# Support Matrix | ||
|
||
| Symbol | Meaning | | ||
|--------|---------| | ||
| :white_check_mark: | Implemented, passes tests | | ||
| :x: | Not yet supported | | ||
| :stop_sign: | Not supported | | ||
|
||
### Integral | ||
| Geometry | Gauss-Legendre | Gauss-Kronrod | H-Adaptive Cubature | | ||
|----------|----------------|---------------|---------------------| | ||
| `Ball` in `𝔼{2}` | :white_check_mark: | :white_check_mark: | :white_check_mark: | | ||
| `Ball` in `𝔼{3}` | :white_check_mark: | :stop_sign: | :white_check_mark: | | ||
| `BezierCurve` | :white_check_mark: | :white_check_mark: | :white_check_mark: | | ||
| `Box` in `𝔼{1}` | :white_check_mark: | :white_check_mark: | :white_check_mark: | | ||
| `Box` in `𝔼{2}` | :white_check_mark: | :white_check_mark: | :white_check_mark: | | ||
| `Box` in `𝔼{3}` | :white_check_mark: | :stop_sign: | :white_check_mark: | | ||
| `Circle` | :white_check_mark: | :white_check_mark: | :white_check_mark: | | ||
| `Cone` | :white_check_mark: | :white_check_mark: | :white_check_mark: | | ||
| `ConeSurface` | :white_check_mark: | :white_check_mark: | :white_check_mark: | | ||
| `Cylinder` | :white_check_mark: | :stop_sign: | :white_check_mark: | | ||
| `CylinderSurface` | :white_check_mark: | :white_check_mark: | :white_check_mark: | | ||
| `Disk` | :white_check_mark: | :white_check_mark: | :white_check_mark: | | ||
| `Frustum` | :stop_sign: | :stop_sign: | :stop_sign: | | ||
| `FrustumSurface` | :stop_sign: | :stop_sign: | :stop_sign: | | ||
| `Line` | :white_check_mark: | :white_check_mark: | :white_check_mark: | | ||
| `ParaboloidSurface` | :white_check_mark: | :white_check_mark: | :white_check_mark: | | ||
| `Plane` | :white_check_mark: | :white_check_mark: | :white_check_mark: | | ||
| `Ray` | :white_check_mark: | :white_check_mark: | :white_check_mark: | | ||
| `Ring` | :white_check_mark: | :white_check_mark: | :white_check_mark: | | ||
| `Rope` | :white_check_mark: | :white_check_mark: | :white_check_mark: | | ||
| `Segment` | :white_check_mark: | :white_check_mark: | :white_check_mark: | | ||
| `SimpleMesh` | :x: | :x: | :x: | | ||
| `Sphere` in `𝔼{2}` | :white_check_mark: | :white_check_mark: | :white_check_mark: | | ||
| `Sphere` in `𝔼{3}` | :white_check_mark: | :white_check_mark: | :white_check_mark: | | ||
| `Tetrahedron` in `𝔼{3}` | :x: | :white_check_mark: | :x: | | ||
| `Triangle` | :white_check_mark: | :white_check_mark: | :white_check_mark: | | ||
| `Torus` | :white_check_mark: | :white_check_mark: | :white_check_mark: | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
# Integrating a Triangle | ||
|
||
For a specified `Meshes.Triangle` surface with area $A$, let $u$ and $v$ be Barycentric coordinates that span the surface. | ||
```math | ||
\int_\triangle f(\bar{r}) \, \text{d}A | ||
= \iint_\triangle f\left( \bar{r}(u,v) \right) \, \left( \text{d}u \wedge \text{d}v \right) | ||
``` | ||
|
||
Since the geometric transformation from the originally-arbitrary domain to a Barycentric domain is linear, the magnitude of the surface element $\text{d}u \wedge \text{d}v$ is constant throughout the integration domain. This constant will be equal to twice the magnitude of $A$. | ||
```math | ||
\int_\triangle f(\bar{r}) \, \text{d}A | ||
= 2A \int_0^1 \int_0^{1-v} f\left( \bar{r}(u,v) \right) \, \text{d}u \, \text{d}v | ||
``` | ||
|
||
This non-rectangular Barycentric domain prevents a direct application of most numerical integration methods. It can be directly integrated, albeit inefficiently, using nested Gauss-Kronrod quadrature rules. Alternatively, additional transformation could be applied to map this domain onto a rectangular domain. | ||
|
||
**WORK IN PROGRESS:** continued derivation to detail this barycentric-rectangular domain transformation |
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters