Crate sacio

Source
Expand description

Library for reading and writing Seismic Analysis Code (SAC) files

Reference: SAC Manual

use sacio::Sac;
use sacio::SacString;

let mut s = Sac::from_file("tests/file.sac")?;

assert_eq!(s.mean_amp(), -0.09854721);
assert_eq!(s.min_amp(), -1.56928);
assert_eq!(s.max_amp(), 1.52064);

s.y.iter_mut().for_each(|v| *v *= 2.0);

s.extrema_amp();

assert_eq!(s.mean_amp(), -0.09854721 * 2.0);
assert_eq!(s.min_amp(), -1.56928 * 2.0);
assert_eq!(s.max_amp(), 1.52064 * 2.0);

s.set_string(SacString::Network, "CI");
s.set_string(SacString::Station, "PAS");
s.set_string(SacString::Location, "10");
s.set_string(SacString::T1, "PKIKP");
s.set_string(SacString::T1, "SKJKS");

assert_eq!(s.dist_deg(), 3.3574646);

s.to_file("tests/main.sac")?;

Modules§

doc
Extra documentation for sacio

Structs§

Sac
SAC file data and metadata

Enums§

SacDataType
Type of Data
SacError
Errors associated with Reading and Writing Sac Files
SacFileType
Type of file contents
SacString
Available String Meta Data
SacZeroTime
Zero time equivalence
TimeValue
Value containing an absolute or relative time