mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-01-19 00:37:25 +01:00
[poincare/trigonometry] Method UnitConversionFactor
Change-Id: I4ef3e4404071a305354b572e15e5199040f9bf48
This commit is contained in:
committed by
EmilieNumworks
parent
f329ca825f
commit
64208a7f3c
@@ -16,6 +16,7 @@ public:
|
||||
static bool isDirectTrigonometryFunction(const Expression & e);
|
||||
static bool isInverseTrigonometryFunction(const Expression & e);
|
||||
static bool AreInverseFunctions(const Expression & directFunction, const Expression & inverseFunction);
|
||||
static Expression UnitConversionFactor(Preferences::AngleUnit fromUnit, Preferences::AngleUnit toUnit);
|
||||
static bool ExpressionIsEquivalentToTangent(const Expression & e);
|
||||
static Expression shallowReduceDirectFunction(Expression & e, ExpressionNode::ReductionContext reductionContext);
|
||||
static Expression shallowReduceInverseFunction(Expression & e, ExpressionNode::ReductionContext reductionContext);
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
#include <poincare/constant.h>
|
||||
#include <poincare/decimal.h>
|
||||
#include <poincare/derivative.h>
|
||||
#include <poincare/division.h>
|
||||
#include <poincare/float.h>
|
||||
#include <poincare/multiplication.h>
|
||||
#include <poincare/power.h>
|
||||
@@ -87,6 +88,13 @@ bool Trigonometry::AreInverseFunctions(const Expression & directFunction, const
|
||||
return inverseFunction.type() == correspondingType;
|
||||
}
|
||||
|
||||
Expression Trigonometry::UnitConversionFactor(Preferences::AngleUnit fromUnit, Preferences::AngleUnit toUnit) {
|
||||
if (fromUnit == toUnit) {
|
||||
return Rational::Builder(1);
|
||||
}
|
||||
return Division::Builder(piExpression(toUnit), piExpression(fromUnit));
|
||||
}
|
||||
|
||||
bool Trigonometry::ExpressionIsEquivalentToTangent(const Expression & e) {
|
||||
// We look for (cos^-1 * sin)
|
||||
assert(ExpressionNode::Type::Power < ExpressionNode::Type::Sine);
|
||||
|
||||
Reference in New Issue
Block a user