Skip to content

Commit e4f1d9b

Browse files
committed
Rename Barr-Houseman analytic module for 1996 reference
Rename analytic/barr_houseman.py to barr_houseman_96.py so the module path identifies the paper that supplies the closed-form Cartesian solution and cannot be confused with the related BH92 study. Update the package import and developer documentation, and add a focused assertion that uw.analytic.barr_houseman_96.FaultedMedium resolves to the registered public class.
1 parent 3c53e04 commit e4f1d9b

4 files changed

Lines changed: 7 additions & 2 deletions

File tree

docs/developer/subsystems/analytic-solutions.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -511,13 +511,17 @@ the cost was imagined.
511511

512512
## A solution with a fault in it
513513

514-
`FaultedMedium` (Barr & Houseman 1996, `analytic/barr_houseman.py`) is the linear
514+
`FaultedMedium` (Barr & Houseman 1996, `analytic/barr_houseman_96.py`) is the linear
515515
plane-strain case of their Appendix: a fault that terminates *inside* a viscous
516516
medium, on a disc of radius $R_0$ with the tip at the centre and the fault
517517
running out to the perimeter. It carries zero shear traction on the fault,
518518
continuous normal velocity and continuous normal stress across it, and slip
519519
$2U_0\sqrt{r/R_0}$.
520520

521+
The year remains in the module name to distinguish this closed-form 1996
522+
solution from the related 1992 study, which does not provide the corresponding
523+
full Cartesian analytical field.
524+
521525
It is here because it is the only absolute standard in the suite for a fault
522526
calculation. Everything else a fault model can be measured against is another
523527
discretisation.

src/underworld3/analytic/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828

2929
from ._base import AnalyticSolution, FreeSlipWalls, FixedWalls
3030

31-
from .barr_houseman import FaultedMedium
31+
from .barr_houseman_96 import FaultedMedium
3232
from .inclusion import EllipticalInclusion
3333
from .kramer import CylindricalStokes
3434
from .richards import GardnerSteady, GardnerTransient
File renamed without changes.

tests/test_1029_analytic_faulted_medium.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -453,6 +453,7 @@ def test_it_is_registered_in_the_family(mesh):
453453
assert uw.analytic.is_available("FaultedMedium")
454454
assert "Barr" in uw.analytic.describe("FaultedMedium")
455455

456+
assert uw.analytic.barr_houseman_96.FaultedMedium is uw.analytic.FaultedMedium
456457
assert uw.analytic.FaultedMedium.solves == "stokes"
457458
assert uw.analytic.FaultedMedium.symbolic is True
458459
assert uw.analytic.FaultedMedium.expensive_to_validate is False

0 commit comments

Comments
 (0)