コード例 #1
0
    def add_data(self):
        """

        """
        if len(self.periods) == 0:
            periods = self.fle["IMS/X/Spectra/Response/Periods"].value[1:]

        x_acc = self.fle["Time Series/X/Original Record/Acceleration"]
        y_acc = self.fle["Time Series/Y/Original Record/Acceleration"]
        sax, say = ims.get_response_spectrum_pair(x_acc.value,
                                                  x_acc.attrs["Time-step"],
                                                  y_acc.value,
                                                  y_acc.attrs["Time-step"],
                                                  periods,
                                                  self.damping)
        sa_hor = ORDINARY_SA_COMBINATION[self.component](sax, say)
        dstring = "damping_" + str(int(100.0 * self.damping)).zfill(2)
        nvals = len(sa_hor["Acceleration"])
        self._build_group("IMS/H/Spectra/Response", "Acceleration", 
            "Acceleration", sa_hor, nvals, "cm/s/s", dstring)
        self._build_group("IMS/H/Spectra/Response", "Velocity", 
            "Velocity", sa_hor, nvals, "cm/s", dstring)
        self._build_group("IMS/H/Spectra/Response", "Displacement", 
            "Displacement", sa_hor, nvals, "cm", dstring)
        self._build_group("IMS/H/Spectra/Response", "PSA", 
            "Pseudo-Acceleration", sa_hor, nvals, "cm/s/s", dstring)
        self._build_group("IMS/H/Spectra/Response", "PSV", 
            "Pseudo-Velocity", sa_hor, nvals, "cm/s", dstring)
        self._add_periods(periods)
コード例 #2
0
    def add_data(self):
        """
        Adds the response spectrum
        """
        if len(self.periods) == 0:
            self.periods = self.fle["IMS/X/Spectra/Response/Periods"].value[1:]

        x_acc = self.fle["Time Series/X/Original Record/Acceleration"]
        y_acc = self.fle["Time Series/Y/Original Record/Acceleration"]
        sax, say = ims.get_response_spectrum_pair(x_acc.value,
                                                  x_acc.attrs["Time-step"],
                                                  y_acc.value,
                                                  y_acc.attrs["Time-step"],
                                                  self.periods, self.damping)
        sa_hor = ORDINARY_SA_COMBINATION[self.component](sax, say)
        dstring = "damping_" + str(int(100.0 * self.damping)).zfill(2)
        nvals = len(sa_hor["Acceleration"])
        self._build_group("IMS/H/Spectra/Response", "Acceleration",
                          "Acceleration", sa_hor, nvals, "cm/s/s", dstring)
        self._build_group("IMS/H/Spectra/Response", "Velocity", "Velocity",
                          sa_hor, nvals, "cm/s", dstring)
        self._build_group("IMS/H/Spectra/Response", "Displacement",
                          "Displacement", sa_hor, nvals, "cm", dstring)
        self._build_group("IMS/H/Spectra/Response", "PSA",
                          "Pseudo-Acceleration", sa_hor, nvals, "cm/s/s",
                          dstring)
        self._build_group("IMS/H/Spectra/Response", "PSV", "Pseudo-Velocity",
                          sa_hor, nvals, "cm/s", dstring)
        self._add_periods()
コード例 #3
0
 def test_get_geometric_mean_spectrum(self):
     # Tests the geometric mean spectrum
     sax, say = ims.get_response_spectrum_pair(
         self.fle["INPUTS/RECORD1/XRECORD"][:],
         self.fle["INPUTS/RECORD1/XRECORD"].attrs["timestep"],
         self.fle["INPUTS/RECORD1/YRECORD"][:],
         self.fle["INPUTS/RECORD1/YRECORD"].attrs["timestep"],
         self.periods, damping=0.05, units="cm/s/s",
         method="Nigam-Jennings")
     sa_gm = ims.geometric_mean_spectrum(sax, say)
     self._compare_sa_sets(sa_gm, "TEST1/GM/spectra")
コード例 #4
0
 def test_envelope_spectrum(self):
     # Tests the envelope spectrum
     sax, say = ims.get_response_spectrum_pair(
         self.fle["INPUTS/RECORD1/XRECORD"][:],
         self.fle["INPUTS/RECORD1/XRECORD"].attrs["timestep"],
         self.fle["INPUTS/RECORD1/YRECORD"][:],
         self.fle["INPUTS/RECORD1/YRECORD"].attrs["timestep"],
         self.periods, damping=0.05, units="cm/s/s",
         method="Nigam-Jennings")
     sa_env = ims.envelope_spectrum(sax, say)
     self._compare_sa_sets(sa_env, "TEST1/ENV/spectra")
コード例 #5
0
 def test_get_response_spectrum_pair(self):
     # Tests the call to the response spectrum via ims
     sax, say = ims.get_response_spectrum_pair(
         self.fle["INPUTS/RECORD1/XRECORD"][:],
         self.fle["INPUTS/RECORD1/XRECORD"].attrs["timestep"],
         self.fle["INPUTS/RECORD1/YRECORD"][:],
         self.fle["INPUTS/RECORD1/YRECORD"].attrs["timestep"],
         self.periods, damping=0.05, units="cm/s/s",
         method="Nigam-Jennings")
     self._compare_sa_sets(sax, "TEST1/X/spectra")
     self._compare_sa_sets(say, "TEST1/Y/spectra")