Differential-Calculus
Its Calculus, Differential Calculus a.k.a DiffCalculus, a Python 3.x package for Implementing Differentiation in Python
It is also available on PyPI
Installation
Please Note :- Requires Python Version 3.x
If there are 2 or more versions of Python installed in your system (which mostly occurs in UNIX/Linux systems) then please run any one of the commands in the BASH/ZSH Shell :-
$ pip3 install DiffCalculus
$ python3 -m pip install DiffCalculus
If there is only Python 3.x installed in your system like in Windows systems then please run any one of commands in the Command Prompt :-
>pip install DiffCalculus
>python -m pip install DiffCalculus
Quick Guide
Please Read Till the End
-
Import the module using
import diffcalculus as dc
. -
diffcalculus.functions.*
contains all the differentiable functions.- For functions of roots of x, please use
diffcalculus.functions.x(<exponent>)
, like-
diffcalculus.functions.x()
creates a sqrt(x) function. -
diffcalculus.functions.x(0.34)
creates a cbrt(x) function.
-
- For functions of roots of x, please use
-
diffcalculus.differentiate()
differentiates the given function with respect to the variable x. Please Refer to Differentiation of Functions below. -
diffcalculus.differentiateAtPoint()
differentiates the given function with respect to the variable x at the given point. Please Refer to Differentiation of a Function at a particular point below. -
diffcalculus.substitute
substitutes the given value for the variable x in the given function. Please Refer to 'substitute' Function Implementation below. -
diffcalculus.errors.*
contains all the Exceptions, which may occur during calculation.
Sample Implementations
Please Note :- Differentiation of all the functions happens with respect to the variable x only.
1. Differentiation of Functions :-
1.1. Differentiation of Simple Functions
a) Differentiate sin(x)
import diffcalculus as dc
sin = dc.functions.sin()
print(dc.differentiate(sin))
b) Differentiate sin⁻¹(x)
import diffcalculus as dc
sin_inv = dc.functions.sinInv()
print(dc.differentiate(sin_inv))
c) Differentiate x² + 2x + 1
import diffcalculus as dc
poly = dc.functions.polynomial([1, 2], constant=1)
print(dc.differentiate(poly))
1.2. Differentiation of Complex Functions :-
a) Differentiate sin(sqrt(x))
import diffcalculus as dc
sqrt_x = dc.functions.x()
func = dc.functions.sin(sqrt_x)
print(dc.differentiate(func))
b) Differentiate ln(3x³ + 2x² + 5x)
import diffcalculus as dc
poly = dc.functions.polynomial([3, 2, 5])
func = dc.functions.log(poly)
print(dc.differentiate(func))
c) Differentiate sin(x) + cos(x)
import diffcalculus as dc
sin = dc.functions.sin()
cos = dc.functions.cos()
func = a+b
print(dc.differentiate(func))
2. Differentiation of a Function at a particular point :-
a) Differentiate sin(x) at x=π/2 Result Should be 0
import diffcalculus as dc
from math import pi
sin, point = dc.functions.sin(), pi/2
print(dc.differentiateAtPoint(sin, point))
b) Differentiate sqrt(x) at x=4 Result Should be 0.25
import diffcalculus as dc
sqrt_x, point = dc.functions.x(), 4
print(dc.differentiateAtPoint(sqrt_x, point))
'substitute' Function Implementation :-
Besides Differentiation of Functions and also their Differentiation at a particular point; The Package also contains a 'substitute' Function which substitutes a value for the variable x in the given function.
a) The Value of sin(π) Result should be 0
import diffcalculus as dc
from math import pi
sin, point = dc.functions.sin(), pi
print(dc.substitute(sin, point))
Please Note :-
- For Trigonometric Functions, please pass angles in radians, not in degrees; for an accurate and precise Result.
- Inverse Trigonometric Functions returns angles in degrees and not in radians for better understanding from the Output.
a) The Value of 3x³ + 2x² + 5x + 10 at x=2 Result should be 52
import diffcalculus as dc
from math import pi
poly, point = dc.functions.polynomial([3, 2, 5], constant=10), 2
print(dc.substitute(poly, point))