Esempio n. 1
0
    def test_fatigue_life(self):
        sncurves.compliance("2012.10")
        for item in self.data:
            f = sncurves.get_sn_curve(item["curve"],
                                      seawater=item["seawater"],
                                      cp=item["cp"])
            expected = item["n"]
            sigma = item["sigma"]
            t = item["t"]

            self.assertAlmostEqual(f(sigma, t=t),
                                   expected,
                                   delta=1.0,
                                   msg="\nTEST ITEM = {}\n{}".format(
                                       item, f.params))

            if item["t"] <= 25.0:
                # For t <= 25 it should be ok to skip argument *t*
                self.assertAlmostEqual(f(sigma),
                                       expected,
                                       delta=1.0,
                                       msg="\nTEST ITEM = {}\n{}".format(
                                           item, f.params))

            elif f.params.k != 0:
                # For t > 25 and k != 0 the result should be incorrect
                # if argument *t* is omitted
                self.assertNotEqual(np.round(f(sigma)),
                                    round(expected),
                                    msg="\nTEST ITEM = {}\n{}".format(
                                        item, f.params))
Esempio n. 2
0
 def test_scf(self):
     sncurves.compliance("2012.10")
     sn = sncurves.get_sn_curve("T", seawater=True, cp=True)
     self.assertEqual(sn(1000), sn(100, scf=10))
     
     # For curve T the thickness effect factor k changes for scf > 10
     self.assertNotEqual(sn(1000, t=50), sn(10, t=50, scf=100))
Esempio n. 3
0
    def test_scf(self):
        sncurves.compliance("2014.06")
        sn = sncurves.get_sn_curve("T", seawater=True, cp=True)
        self.assertEqual(sn(1000), sn(100, scf=10))

        # For curve T the thickness effect factor k changes for scf > 10
        self.assertNotEqual(sn(1000, t=50), sn(10, t=50, scf=100))
Esempio n. 4
0
    def test_fatigue_life(self):
        sncurves.compliance("2012.10")
        for item in self.data:
            f = sncurves.get_sn_curve(item["curve"], seawater=item["seawater"], cp=item["cp"])
            expected = item["n"]
            sigma = item["sigma"]
            t = item["t"]
            
            self.assertAlmostEqual(f(sigma, t=t), expected, delta=1.0,
                msg="\nTEST ITEM = {}\n{}".format(item, f.params))

            if item["t"] <= 25.0:
                # For t <= 25 it should be ok to skip argument *t*
                self.assertAlmostEqual(f(sigma), expected, delta=1.0,
                    msg="\nTEST ITEM = {}\n{}".format(item, f.params))

            elif f.params.k != 0:
                # For t > 25 and k != 0 the result should be incorrect
                # if argument *t* is omitted
                self.assertNotEqual(np.round(f(sigma)), round(expected),
                    msg="\nTEST ITEM = {}\n{}".format(item, f.params))