Skip to main content

A Python 3.x package that implements Differentiation and a whole other functionalities.

Project description

diffcalculus

A Python package that implements Differential Calculus. It is also available on GitHub

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.
  • 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))

3. 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(x) at x = π 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 understandability 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))

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

diffcalculus-0.1.6.tar.gz (9.4 kB view hashes)

Uploaded Source

Built Distribution

diffcalculus-0.1.6-py3-none-any.whl (8.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page