Skip to content

Commit 246479e

Browse files
committed
[ENH] Add deprecation warning for legacy GeophysicsInput constructor and update initialization logic
- Introduced `warnings.warn` to notify usage of deprecated `GeophysicsInput` constructor involving `tz` and `densities`. - Updated `GeophysicsInput` initialization to utilize `GravityInput` and `MagneticsInput` for better modularity.
1 parent 5e227f7 commit 246479e

File tree

1 file changed

+14
-1
lines changed

1 file changed

+14
-1
lines changed

gempy_engine/core/data/geophysics_input.py

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
from dataclasses import dataclass
1+
import warnings
2+
from dataclasses import dataclass
23
from typing import Annotated, Optional
34

45
import numpy as np
@@ -23,6 +24,18 @@ class MagneticsInput:
2324
class GeophysicsInput:
2425
gravity_input: Optional[GravityInput] = None
2526
magnetics_input: Optional[MagneticsInput] = None
27+
28+
def __init__(self, gravity_input: Optional[GravityInput] = None,
29+
magnetics_input: Optional[MagneticsInput] = None,
30+
tz: Optional[Annotated[np.ndarray, numpy_array_short_validator]] = None,
31+
densities: Optional[Annotated[np.ndarray, numpy_array_short_validator]] = None):
32+
if gravity_input is not None:
33+
self.gravity_input = gravity_input
34+
else:
35+
warnings.warn("Using deprecated GeophysicsInput constructor. Use GravityInput instead.", DeprecationWarning)
36+
self.gravity_input = GravityInput(tz=tz, densities=densities)
37+
if magnetics_input is not None:
38+
self.magnetics_input = magnetics_input
2639

2740
@property
2841
def tz(self) -> Optional[Annotated[np.ndarray, numpy_array_short_validator]]:

0 commit comments

Comments
 (0)