add tan_pi
authorJacob Lifshay <programmerjake@gmail.com>
Fri, 14 May 2021 02:48:34 +0000 (19:48 -0700)
committerJacob Lifshay <programmerjake@gmail.com>
Fri, 14 May 2021 02:48:34 +0000 (19:48 -0700)
src/algorithms/trig_pi.rs

index e7763787910685fda9a765093a6d1ef4764dca1e..5be0ad65b017a389823488c1050a1b22eeb51293 100644 (file)
@@ -249,6 +249,27 @@ pub fn cos_pi_f64<Ctx: Context>(ctx: Ctx, x: Ctx::VecF64) -> Ctx::VecF64 {
     sin_cos_pi_f64(ctx, x).1
 }
 
+/// computes `tan(pi * x)`
+/// error inherited from `sin_pi / cos_pi`
+pub fn tan_pi_f16<Ctx: Context>(ctx: Ctx, x: Ctx::VecF16) -> Ctx::VecF16 {
+    let (sin, cos) = sin_cos_pi_f16(ctx, x);
+    sin / cos
+}
+
+/// computes `tan(pi * x)`
+/// error inherited from `sin_pi / cos_pi`
+pub fn tan_pi_f32<Ctx: Context>(ctx: Ctx, x: Ctx::VecF32) -> Ctx::VecF32 {
+    let (sin, cos) = sin_cos_pi_f32(ctx, x);
+    sin / cos
+}
+
+/// computes `tan(pi * x)`
+/// error inherited from `sin_pi / cos_pi`
+pub fn tan_pi_f64<Ctx: Context>(ctx: Ctx, x: Ctx::VecF64) -> Ctx::VecF64 {
+    let (sin, cos) = sin_cos_pi_f64(ctx, x);
+    sin / cos
+}
+
 #[cfg(test)]
 mod tests {
     use super::*;