Fourier
Fourier
is a modulation that generates a waveform by superimposing multiple Sine
.
use autd3::modulation::Fourier;
use autd3::prelude::*;
#[allow(unused_variables)]
fn main() -> Result<(), Box<dyn std::error::Error>> {
let m = Fourier::new([Sine::new(100 * Hz), Sine::new(150 * Hz)])?;
Ok(())
}
#include<autd3.hpp>
#include <autd3/modulation/fourier.hpp>
int main() {
const auto m =
autd3::modulation::Fourier({autd3::modulation::Sine(100 * autd3::Hz),
autd3::modulation::Sine(150 * autd3::Hz)});
return 0; }
using AUTD3Sharp.Modulation;
using static AUTD3Sharp.Units;
var m = new Fourier([new Sine(100u * Hz), new Sine(150u * Hz), new Sine(200u * Hz)]);
from pyautd3 import Hz, Sine
from pyautd3.modulation import Fourier
m = Fourier([Sine(100 * Hz), Sine(150 * Hz)])
Phase parameter of Sine
For Fourier
, Sine
has a feature to specify the phase parameter.
use autd3::modulation::Fourier;
use autd3::prelude::*;
#[allow(unused_variables)]
fn main() -> Result<(), Box<dyn std::error::Error>> {
let m = Fourier::new([
Sine::new(100 * Hz),
Sine::new(150 * Hz).with_phase(PI / 2.0 * rad),
]);
Ok(())
}
#include<autd3.hpp>
#include <autd3/modulation/fourier.hpp>
int main() {
const auto m = autd3::modulation::Fourier(
{autd3::modulation::Sine(100 * autd3::Hz),
autd3::modulation::Sine(150 * autd3::Hz)
.with_phase(autd3::pi / 2.0f * autd3::rad)});
return 0; }
using AUTD3Sharp;
using AUTD3Sharp.Modulation;
using static AUTD3Sharp.Units;
using System;
var m = new Fourier([new Sine(100u * Hz), new Sine(150 * Hz).WithPhase(MathF.PI / 2.0f * rad)]);
import numpy as np
from pyautd3 import Hz, rad, Sine
from pyautd3.modulation import Fourier
m = Fourier([Sine(100 * Hz), Sine(150 * Hz).with_phase(np.pi / 2.0 * rad)])