endaq.calc
Usage Examples¶
Filters¶
df_accel_highpass = endaq.calc.filters.butterworth(df_accel, low_cutoff=1, high_cutoff=None)
df_accel_lowpass = endaq.calc.filters.butterworth(df_accel, low_cutoff=None, high_cutoff=100)
Integration¶
dfs_integrate = endaq.calc.integrate.integrals(df_accel, n=2, highpass_cutoff=1.0, tukey_percent=0.05)
PSD¶
Linearly-spaced¶
df_accel_psd = endaq.calc.psd.welch(df_accel, bin_width=1/11)
Octave-spaced¶
df_accel_psd_oct = endaq.calc.psd.to_octave(df_accel_psd, fstart=1, octave_bins=3)
Derivatives & Integrals¶
df_vel_psd = endaq.calc.psd.differentiate(df_accel_psd, n=-1)
df_jerk_psd = endaq.calc.psd.differentiate(df_accel_psd, n=1)
Vibration Criterion (VC) Curves¶
df_accel_vc = endaq.calc.psd.vc_curves(df_accel_psd, fstart=1, octave_bins=3)
Shock Analysis¶
df_accel_pvss = endaq.calc.shock.shock_spectrum(df_accel, freqs=2 ** np.arange(-10, 13, 0.25), damp=0.05, mode="pvss")
df_accel_srs = endaq.calc.shock.shock_spectrum(df_accel, freqs=[1, 10, 100, 1000], damp=0.05, mode="srs")
Shock Characterization: Half-Sine-Wave Pulse¶
half_sine_params = endaq.calc.shock.enveloping_half_sine(df_accel_pvss, damp=0.05)