-
Udo Eisenbarth authored
Function was completely rewritten. Fixed many clippy warnings and reformatted code.
Udo Eisenbarth authoredFunction was completely rewritten. Fixed many clippy warnings and reformatted code.
spectrum_test.rs 1.25 KiB
use opossum::error::OpossumError;
use opossum::spectrum::{create_visible_spectrum, Spectrum};
use uom::si::{f64::Length, length::nanometer};
fn main() -> Result<(), OpossumError> {
let mut s = Spectrum::new(
Length::new::<nanometer>(400.0)..Length::new::<nanometer>(450.0),
Length::new::<nanometer>(0.1),
)?;
s.add_lorentzian_peak(
Length::new::<nanometer>(415.0),
Length::new::<nanometer>(3.2),
2.0,
)?;
let mut s2 = Spectrum::new(
Length::new::<nanometer>(400.0)..Length::new::<nanometer>(450.0),
Length::new::<nanometer>(2.1),
)?;
s2.add_lorentzian_peak(
Length::new::<nanometer>(430.0),
Length::new::<nanometer>(1.2),
0.5,
)?;
s.add(&s2);
let mut s3 = Spectrum::new(
Length::new::<nanometer>(400.0)..Length::new::<nanometer>(450.0),
Length::new::<nanometer>(0.05),
)?;
s3.add_lorentzian_peak(
Length::new::<nanometer>(420.0),
Length::new::<nanometer>(0.3),
0.02,
)?;
s.sub(&s3);
s.to_plot("spectrum.svg");
let s4 = Spectrum::from_csv("NE03B.csv")?;
s4.to_plot("ne03b_raw.svg");
let mut s5 = create_visible_spectrum();
s5.resample(&s4);
s5.to_plot("ne03b.svg");
Ok(())
}