Merge remote-tracking branch 'origin/main'
This commit is contained in:
@@ -1,7 +1,9 @@
|
||||
import numpy as np
|
||||
from numpy import sin, cos
|
||||
from numpy.typing import NDArray
|
||||
from ellipsoide import EllipsoidTriaxial
|
||||
from GHA_triaxial.gha1_ana import gha1_ana
|
||||
from GHA_triaxial.utils import func_sigma_ell, louville_constant
|
||||
from GHA_triaxial.utils import func_sigma_ell, louville_constant, pq_ell
|
||||
import plotly.graph_objects as go
|
||||
import winkelumrechnungen as wu
|
||||
|
||||
|
||||
@@ -97,58 +97,35 @@ def get_random_examples_umbilics_end(num: int, seed: int = None) -> List:
|
||||
|
||||
def get_random_examples_gamma(group: str, num: int, seed: int = None, length: str = None) -> List:
|
||||
eps = 1e-20
|
||||
long_short = 1.5
|
||||
long_short = 2
|
||||
if seed is not None:
|
||||
random.seed(seed)
|
||||
with open(r"C:\Users\moell\OneDrive\Desktop\Vorlesungen\Master-Projekt\Python_Masterprojekt\GHA_triaxial\Karney_2024_Testset.txt") as datei:
|
||||
lines = datei.readlines()
|
||||
examples = []
|
||||
while len(examples) < num:
|
||||
i = 0
|
||||
while len(examples) < num and i < len(lines):
|
||||
example = line2example(lines[random.randint(0, len(lines) - 1)])
|
||||
if example in examples:
|
||||
continue
|
||||
i += 1
|
||||
|
||||
beta0, lamb0, alpha0_ell, beta1, lamb1, alpha1_ell, s = example
|
||||
gamma = jacobi_konstante(beta0, lamb0, alpha0_ell, ell)
|
||||
if group == "a":
|
||||
if 1 >= gamma >= 0.1:
|
||||
if length == "short":
|
||||
if example[6] < long_short:
|
||||
examples.append(example)
|
||||
elif length == "long":
|
||||
if example[6] >= long_short:
|
||||
examples.append(example)
|
||||
else:
|
||||
examples.append(example)
|
||||
if group == "b":
|
||||
if 0.1 > gamma > eps:
|
||||
if length == "short":
|
||||
if example[6] < long_short:
|
||||
examples.append(example)
|
||||
elif length == "long":
|
||||
if example[6] >= long_short:
|
||||
examples.append(example)
|
||||
else:
|
||||
examples.append(example)
|
||||
if group == "c":
|
||||
if abs(gamma) <= eps:
|
||||
if length == "short":
|
||||
if example[6] < long_short:
|
||||
examples.append(example)
|
||||
elif length == "long":
|
||||
if example[6] >= long_short:
|
||||
examples.append(example)
|
||||
else:
|
||||
examples.append(example)
|
||||
if group == "de":
|
||||
if eps > gamma > -1e-17:
|
||||
if length == "short":
|
||||
if example[6] < long_short:
|
||||
examples.append(example)
|
||||
elif length == "long":
|
||||
if example[6] >= long_short:
|
||||
examples.append(example)
|
||||
else:
|
||||
examples.append(example)
|
||||
if group == "e":
|
||||
if -1e-17 >= gamma >= -1:
|
||||
|
||||
if group not in ["a", "b", "c", "d", "e"]:
|
||||
break
|
||||
elif group == "a" and not 1 >= gamma >= 0.01:
|
||||
continue
|
||||
elif group == "b" and not 0.01 > gamma > eps:
|
||||
continue
|
||||
elif group == "c" and not abs(gamma) <= eps:
|
||||
continue
|
||||
elif group == "d" and not -eps > gamma > -1e-17:
|
||||
continue
|
||||
elif group == "e" and not -1e-17 >= gamma >= -1:
|
||||
continue
|
||||
|
||||
if length == "short":
|
||||
if example[6] < long_short:
|
||||
examples.append(example)
|
||||
@@ -157,6 +134,7 @@ def get_random_examples_gamma(group: str, num: int, seed: int = None, length: st
|
||||
examples.append(example)
|
||||
else:
|
||||
examples.append(example)
|
||||
|
||||
return examples
|
||||
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
BIN
Tests/gha_resultsKarney.pkl
Normal file
BIN
Tests/gha_resultsKarney.pkl
Normal file
Binary file not shown.
BIN
Tests/gha_resultsPanou.pkl
Normal file
BIN
Tests/gha_resultsPanou.pkl
Normal file
Binary file not shown.
BIN
Tests/gha_resultsRandom.pkl
Normal file
BIN
Tests/gha_resultsRandom.pkl
Normal file
Binary file not shown.
@@ -819,7 +819,7 @@ def compute_gha1_stoch(n1, cb_stoch, n_in, beta0, lamb0, s, a0, ax, ay, b):
|
||||
if "on" not in (cb_stoch or []):
|
||||
return "", None
|
||||
|
||||
n_in = int(n_in) if n_in else 1000
|
||||
n_in = float(n_in) if n_in else 1000
|
||||
|
||||
try:
|
||||
ell = EllipsoidTriaxial(ax, ay, b)
|
||||
@@ -873,7 +873,7 @@ def compute_gha1_approx(n1, cb_approx, ds_in, beta0, lamb0, s, a0, ax, ay, b):
|
||||
if not n1 or "on" not in (cb_approx or []):
|
||||
return "", None
|
||||
|
||||
ds_in = int(ds_in) if ds_in else 1000
|
||||
ds_in = float(ds_in) if ds_in else 1000
|
||||
|
||||
try:
|
||||
ell = EllipsoidTriaxial(ax, ay, b)
|
||||
@@ -987,7 +987,7 @@ def compute_gha2_stoch(n2, cb_stoch, n_in, beta0, lamb0, beta1, lamb1, ax, ay, b
|
||||
if "on" not in (cb_stoch or []):
|
||||
return "", None
|
||||
|
||||
n_in = int(n_in) if n_in else 1000
|
||||
n_in = float(n_in) if n_in else 1000
|
||||
|
||||
try:
|
||||
ell = EllipsoidTriaxial(ax, ay, b)
|
||||
@@ -1041,7 +1041,7 @@ def compute_gha2_approx(n2, cb_approx, ds_in, beta0, lamb0, beta1, lamb1, ax, ay
|
||||
if "on" not in (cb_approx or []):
|
||||
return "", None
|
||||
|
||||
ds_in = int(ds_in) if ds_in else 1000
|
||||
ds_in = float(ds_in) if ds_in else 1000
|
||||
|
||||
try:
|
||||
ell = EllipsoidTriaxial(ax, ay, b)
|
||||
|
||||
@@ -58,7 +58,7 @@ class EllipsoidBiaxial:
|
||||
|
||||
phi2p = lambda self, phi: self.N(phi) * cos(phi)
|
||||
|
||||
def bi_cart2ell(self, point: NDArrayself, Eh: float = 0.001, Ephi: float = wu.gms2rad([0, 0, 0.001])) -> Tuple[float, float, float]:
|
||||
def bi_cart2ell(self, point: NDArray, Eh: float = 0.001, Ephi: float = wu.gms2rad([0, 0, 0.001])) -> Tuple[float, float, float]:
|
||||
"""
|
||||
Umrechnung von kartesischen in ellipsoidische Koordinaten auf einem Rotationsellipsoid
|
||||
# TODO: Quelle
|
||||
|
||||
Reference in New Issue
Block a user