dsv vorbereitet

This commit is contained in:
Markus Clauß 2022-11-08 14:17:52 +01:00
parent 6e4bef19cb
commit 7f2b4f5c34
8 changed files with 42 additions and 4 deletions

View File

@ -1,6 +1,7 @@
# main __init__.py # main __init__.py
from .analysis import * from .analysis import *
from .functions import *
from .helper import * from .helper import *
from .io import * from .io import *
from .labtests import * from .labtests import *

View File

@ -0,0 +1 @@
from .citt import *

View File

@ -0,0 +1,10 @@
import numpy as np
def stiffness_tp26(T, f, Emax, Emin, phi, z0, z1, T0=20.0):
alphaT = np.exp(phi * ((1 / (T + 273.15)) - (1 / (T0 + 273.15))))
x = np.log(f * alphaT) / np.log(10)
E = Emin + (Emax - Emin) / (1 + np.exp(z0 * x + z1))
return E

View File

@ -35,6 +35,8 @@ class DataSineLoad():
self._define_units() self._define_units()
self._calc_hash() self._calc_hash()
def fit(self):
self._read_data() self._read_data()
self._standardize_data() self._standardize_data()

View File

View File

@ -139,6 +139,15 @@ class ShearTestExtension(ShearTest):
def runfit(self): def runfit(self):
self._fit_data() self._fit_data()
def file_in_db(self):
n = DynamicShearTestExtension.objects(filehash=self.filehash).count()
if n > 0:
return True
else:
return False
def save(self, material1, material2, bounding, meta: dict): def save(self, material1, material2, bounding, meta: dict):
for i, fit in self.fit.iterrows(): for i, fit in self.fit.iterrows():
@ -178,6 +187,7 @@ class ShearTestExtension(ShearTest):
values[f'fit_phase_{col}'] = fit[f'fit_phase_{col}'] values[f'fit_phase_{col}'] = fit[f'fit_phase_{col}']
values[f'fit_offset_{col}'] = fit[f'fit_offset_{col}'] values[f'fit_offset_{col}'] = fit[f'fit_offset_{col}']
values[f'fit_slope_{col}'] = fit[f'fit_slope_{col}'] values[f'fit_slope_{col}'] = fit[f'fit_slope_{col}']
values[f'r2_{col}'] = fit[f'r2_{col}']
values.update(meta) values.update(meta)
@ -574,6 +584,12 @@ class ShearTestExtensionTUDresdenGeosys(ShearTestExtension):
]: ]:
self.data[col] = self.data[col].mul(self.unit_S) self.data[col] = self.data[col].mul(self.unit_S)
#convert internal units to global
f = np.mean([0.9 / 355, 0.6 / 234.0, 0.3 / 116.0])
self.data['sigma_normal'] = self.data['sigma_normal'].mul(f).apply(
lambda x: np.round(x, 1))
return True return True
def _read_data(self): def _read_data(self):

View File

@ -27,7 +27,7 @@ class Asphalt(Material):
name = StringField() name = StringField()
material = StringField() material = StringField()
young_modulus = FloatField() young_modulus = DictField()
class Bitumen(Material): class Bitumen(Material):
@ -35,14 +35,14 @@ class Bitumen(Material):
name = StringField() name = StringField()
material = StringField() material = StringField()
young_modulus = FloatField() young_modulus = DictField()
class Epoxy(Material): class Epoxy(Material):
name = StringField() name = StringField()
material = StringField() material = StringField()
young_modulus = FloatField() young_modulus = DictField()
class Dummy(Material): class Dummy(Material):
@ -50,4 +50,4 @@ class Dummy(Material):
name = StringField() name = StringField()
material = StringField() material = StringField()
young_modulus = FloatField() young_modulus = DictField()

View File

@ -13,6 +13,8 @@ class DynamicShearTest(Document):
"step": "60" "step": "60"
}}) }})
tags = ListField(StringField())
standard = StringField(default='TP Asphalt Teil 24') standard = StringField(default='TP Asphalt Teil 24')
lab = StringField(default='TU Dresden', required=True) lab = StringField(default='TU Dresden', required=True)
@ -20,6 +22,7 @@ class DynamicShearTest(Document):
machine = StringField(default=None) machine = StringField(default=None)
filehash = StringField(required=True) filehash = StringField(required=True)
speciment_name = StringField()
project = StringField(required=True) project = StringField(required=True)
workpackage = StringField() workpackage = StringField()
@ -82,3 +85,8 @@ class DynamicShearTestExtension(DynamicShearTest):
fit_offset_s_vert_sum = FloatField() fit_offset_s_vert_sum = FloatField()
fit_slope_s_vert_sum = FloatField() fit_slope_s_vert_sum = FloatField()
r2_s_vert_sum = FloatField() r2_s_vert_sum = FloatField()
## r2
r2_F = FloatField()
r2_s_vert_1 = FloatField()
r2_s_vert_2 = FloatField()
r2_s_vert_sum = FloatField()