Mercurial > repos > public > sbplib_julia
annotate src/BoundaryConditions/sat.jl @ 1483:abc5cc0aec94 feature/boundary_conditions
Update docstrings
author | Vidar Stiernström <vidar.stiernstrom@it.uu.se> |
---|---|
date | Mon, 25 Dec 2023 19:24:08 +0100 |
parents | 35840a0681d1 |
children | 37b05221beda |
rev | line source |
---|---|
1135
05b1d6fd6401
Add functions for constructing SATs
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
1 """ |
1217
ea2e8254820a
Update docstrings and start implementing tests
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1167
diff
changeset
|
2 sat_tensors(op, grid, bc::BoundaryCondition, params...) |
1135
05b1d6fd6401
Add functions for constructing SATs
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
3 |
1483
abc5cc0aec94
Update docstrings
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1396
diff
changeset
|
4 The tensor and boundary operator used to construct a simultaneous-approximation-term |
abc5cc0aec94
Update docstrings
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1396
diff
changeset
|
5 for imposing `bc` related to `op`. |
abc5cc0aec94
Update docstrings
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1396
diff
changeset
|
6 |
abc5cc0aec94
Update docstrings
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1396
diff
changeset
|
7 For `sat_op, L = sat_tensors(...)` then `SAT = sat_op*(L*u - g)` where `g` |
abc5cc0aec94
Update docstrings
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1396
diff
changeset
|
8 is the boundary data. |
1135
05b1d6fd6401
Add functions for constructing SATs
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
9 """ |
05b1d6fd6401
Add functions for constructing SATs
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
10 function sat_tensors end |
05b1d6fd6401
Add functions for constructing SATs
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
11 |
1217
ea2e8254820a
Update docstrings and start implementing tests
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1167
diff
changeset
|
12 |
1135
05b1d6fd6401
Add functions for constructing SATs
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
13 """ |
1167
fd80e9a0ef99
Make use of discretize in sat functions
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1135
diff
changeset
|
14 sat(op, grid, bc::BoundaryCondition, params...) |
1135
05b1d6fd6401
Add functions for constructing SATs
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
15 |
1483
abc5cc0aec94
Update docstrings
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1396
diff
changeset
|
16 Simultaneous-Approximation-Term for a general `bc` to `op`. |
abc5cc0aec94
Update docstrings
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1396
diff
changeset
|
17 Returns a function `SAT(u,g)` weakly imposing `bc` when added to `op*u`. |
1217
ea2e8254820a
Update docstrings and start implementing tests
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1167
diff
changeset
|
18 |
1483
abc5cc0aec94
Update docstrings
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1396
diff
changeset
|
19 `op` must implement the function `sat_tensors`. |
1135
05b1d6fd6401
Add functions for constructing SATs
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
diff
changeset
|
20 """ |
1167
fd80e9a0ef99
Make use of discretize in sat functions
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1135
diff
changeset
|
21 function sat(op, grid, bc::BoundaryCondition, params...) |
1396
35840a0681d1
Start drafting new implemenentation of boundary conditions
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1217
diff
changeset
|
22 sat_op, L = sat_tensors(op, grid, bc, params...) |
35840a0681d1
Start drafting new implemenentation of boundary conditions
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1217
diff
changeset
|
23 return SAT(u, g) = sat_op*(L*u - g) |
1217
ea2e8254820a
Update docstrings and start implementing tests
Vidar Stiernström <vidar.stiernstrom@it.uu.se>
parents:
1167
diff
changeset
|
24 end |