-
-
Notifications
You must be signed in to change notification settings - Fork 0
Macros
Joe McCain III edited this page Apr 9, 2024
·
2 revisions
extern crate acme;
use acme::autodiff;
fn main() {
let (x, y) = (1f64, 2f64);
assert_eq!(autodiff!(x: x + y), 1f64);
assert_eq!(autodiff!(x: x * y), y);
assert_eq!(autodiff!(y: x * y), x);
assert_eq!(autodiff!(x: x - y), 1f64);
assert_eq!(autodiff!(y: x - y), -1f64);
}
extern crate acme;
use acme::autodiff;
fn main() {
let (x, y) = (1f64, 2f64);
assert_eq!(autodiff!(x: x.sin()), x.cos());
assert_eq!(autodiff!(x: x.cos()), -x.sin());
assert_eq!(autodiff!(y: x.cos()), 0f64);
}