TheRealCStover/Trigonometry

A collection of lesser-known circular and hyperbolic trig functions and their inverses

Paclet

Paclet Directory

Manifest

Web ContentResourceCreateNotebook

Headline ImageResourceCreateNotebook

Basic DescriptionResourceCreateNotebook

In a standard trigonometry course, we typically learn about six functions (and their inverses): sin(x), cos(x), tan(x), csc(x), sec(x), and tan(x); this may or may not be extended later to cover the six hyperbolic trig functions (e.g. sinh(x)) and/or their inverses (e.g. (sin^(-1))(x), (sinh^(-1))(x)).

A less-known fact is that trigonometry actually consists of over two dozen other circular and hyperbolic functions, each of which has a well-defined inverse. These mysterious trig functions are closely related to the more well-known relatives that we all know and love today, and though they're rarely used, these functions were ubiquitous a few centuries back, being employed both in academia and in various applications (e.g. mapmaking, ocean exploration, etc.).

Mathematica has a couple of these little-used trig functions built in (namely Haversine and InverseHaversine), but the rest remain unrepresented; this absence is the underlying motivation for the Trigonometry paclet. All of the 50+ functions in this paclet work naturally with the entire Wolfram Language framework, and their immediate availability allows for a better understanding of the relationships and history of both trigonometry and mathematics as a whole. These functions provide both a learning opportunity and a teaching tool, thus contributing to the enrichment of mathematics.

DetailsResourceCreateNotebook

Trigonometry consists of a number of "circular" trigonometric functions, as well as their hyperbolic analogues and the inverses of all of them.

Because of how they're defined, the functions in Trigonometry fit perfectly into all the common Wolfram Language functionality including D, Integrate, Series, Plot, etc.

Main Guide PageResourceCreateNotebook

ExamplesResourceCreateNotebook

Initialization for ExamplesResourceCreateNotebook

PacletDirectoryLoad[];

Needs[];

Basic Examples

Evaluate numerically:

#[0.5]&/@{Versine,Vercosine,Havercosine,Coversine,Covercosine,Hacoversine,Cohaversine,Hacovercosine,Cohavercosine,Exsecant,Excosecant,Chord}

Arguments given in radians:

#[Pi/3]&/@{Versine,Vercosine,Havercosine,Coversine,Covercosine,Hacoversine,Cohaversine,Hacovercosine,Cohavercosine,Exsecant,Excosecant,Chord}

#[1]&/@{InverseVersine,InverseVercosine,InverseHavercosine,InverseCoversine,InverseCovercosine,InverseHacoversine,InverseCohaversine,InverseHacovercosine,InverseCohavercosine,InverseExsecant,InverseExcosecant,InverseChord}

Multiply or divide by Degree to specify an argument in degrees:

#[60 Degree]&/@{Versine,Vercosine,Havercosine,Coversine,Covercosine,Hacoversine,Cohaversine,Hacovercosine,Cohavercosine,Exsecant,Excosecant,Chord}

(FullSimplify[#[1]/Degree])&/@{InverseVersine,InverseVercosine,InverseHavercosine,InverseCoversine,InverseCovercosine,InverseHacoversine,InverseCohaversine,InverseHacovercosine,InverseCohavercosine,InverseExsecant,InverseExcosecant,InverseChord}

Plot over a subset of the reals:

{
With[{list1={Versine,Vercosine,Coversine,Covercosine}},Plot[Evaluate[#[x]&/@list1],{x,-2Pi,2Pi},PlotRange->{Automatic,{-0.5,2}},PlotLegends->list1,ImageSize->333]],
With[{list2={Exsecant,Excosecant,Chord}},Plot[Evaluate[#[x]&/@list2],{x,-2Pi,2Pi},PlotRange->{-10,10},PlotLegends->list2,ImageSize->333]]
}

{
With[{list3={InverseHaversine,InverseHavercosine,InverseHacoversine,InverseHacovercosine}},Plot[Evaluate[#[x]&/@list3],{x,0,1},PlotLegends->list3,ImageSize->333]],
With[{list4={InverseExsecant,InverseExcosecant,InverseChord}},Plot[Evaluate[If[#=!=InverseChord,#[x],#[x+1]]&/@list4],{x,-6,4},PlotLegends->list4,ImageSize->333]]
}

Plot over a subset of the complexes:

ComplexPlot3D[#[z],{z,-2 π-2 I,2 π+2 I},PlotLegends->None]&/@{Versine,Exsecant,Chord,InverseCoversine,InverseExcosecant,InverseChord}

Scope

Source & Additional Information

CreatorResourceCreateNotebook

Christopher Stover

Source Control RepositoryResourceCreateNotebook

https://github.com/stoverc/Trigonometry

LicenseResourceCreateNotebook

KeywordsResourceCreateNotebook

math

trigonometry

trig

right triangle

right triangle trigonometry

unit circle

circle

hyperbola

parabola

conic

arc

arcsine

arccosine

arctangent

arcsecant

arccosecant

arccotangent

sine

cosine

tangent

secant

cosecant

cotangent

chord

haversine

versine

exsecant

cosh

sinh

tanh

sech

csch

coth

Categories

Related Resource ObjectsResourceCreateNotebook

Resource Name (resources from any Wolfram repository)

Source/Reference CitationResourceCreateNotebook

Source, reference or citation information

LinksResourceCreateNotebook

Wikipedia–Versine

Wikipedia–Exsecant

Wikipedia–Trigonometric functions: History

Wikipedia–Trigonometry: Other trigonometric functions

Wikipedia–Chord (geometry)

The trigonometric functions–MacTutor History

CompatibilityResourceCreateNotebook

Wolfram Language VersionResourceCreateNotebook

13+

Operating SystemResourceCreateNotebook

Required FeaturesResourceCreateNotebook

EnvironmentsResourceCreateNotebook

Cloud SupportResourceCreateNotebook

DisclosuresResourceCreateNotebook

Author NotesResourceCreateNotebook