solveTrigonometric.frink

View or download solveTrigonometric.frink in plain text format


/** This contains sloppy and non-rigorous solvers for equations containing
    trigonometric equations.  It is only intended for real-valued arguments
    and will not find all solutions.  It is used as a starting point only.
*/

transformations solveTrigonometric
{
   solve[sin[_a] === _y, _theta] :: expressionContains[_a, _theta] <-> solve[_a === arcsin[_y], _theta]
   solve[cos[_a] === _y, _theta] :: expressionContains[_a, _theta] <-> solve[_a === arccos[_y], _theta]
   solve[tan[_a] === _y, _theta] :: expressionContains[_a, _theta] <-> solve[_a === arctan[_y], _theta]
   
   solve[arcsin[_a] === _y, _theta] :: expressionContains[_a, _theta] <-> solve[_a === sin[_y], _theta]
   solve[arccos[_a] === _y, _theta] :: expressionContains[_a, _theta] <-> solve[_a === cos[_y], _theta]
   solve[arctan[_a] === _y, _theta] :: expressionContains[_a, _theta] <-> solve[_a === tan[_y], _theta]

   solve[sinh[_a] === _y, _theta] :: expressionContains[_a, _theta] <-> solve[_a === arcsinh[_y], _theta]
   solve[cosh[_a] === _y, _theta] :: expressionContains[_a, _theta] <-> solve[_a === arccosh[_y], _theta]
   solve[tanh[_a] === _y, _theta] :: expressionContains[_a, _theta] <-> solve[_a === arctanh[_y], _theta]
   
   solve[arcsinh[_a] === _y, _theta] :: expressionContains[_a, _theta] <-> solve[_a === sinh[_y], _theta]
   solve[arccosh[_a] === _y, _theta] :: expressionContains[_a, _theta] <-> solve[_a === cosh[_y], _theta]
   solve[arctanh[_a] === _y, _theta] :: expressionContains[_a, _theta] <-> solve[_a === tanh[_y], _theta]
   
   cos[arcsin[_x]]  <->  sqrt[1 - _x^2]
   sin[arccos[_x]]  <->  sqrt[1 - _x^2]
}


View or download solveTrigonometric.frink in plain text format


This is a program written in the programming language Frink.
For more information, view the Frink Documentation or see More Sample Frink Programs.

Alan Eliasen was born 18354 days, 1 hours, 15 minutes ago.