GithubHelp home page GithubHelp logo

aowangphilly / axiomathbf Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 0.0 6.56 MB

A PyPi Mathematical Aid Package for Multivariate Calculus (MATH 200)

Home Page: https://pypi.org/project/axiomathbf/

License: MIT License

Python 100.00%
multivariate-calculus math200 drexel python jupyter-notebook

axiomathbf's Introduction

Axiomathbf is a Mathematical Aid package for Multivariate Calculus, used mainly for Jupyter Notebook due to outputs mainly are in Latex. But users can solve Multivariate Calculus problems using any Python environment. Axiomathbf can find the relative and absolute extrema of a function to calculating the gradient and directional derivative of a function.

I decided to create Axiomathbf when I began Math 200 at Drexel University in the winter. As a freshman, I wanted to implement what I learned from my CS courses. And math was what started my CS journey when I first programmed my TI-84.

Table of Content

Technologies Used

  • Python
  • Sympy - A computer algebra system written in pure Python
  • Jupyter Notebook - an open-source web application that allows you to create and share documents that contain live code, equations, visualizations and narrative text

Installation

git clone [email protected]:ow-wow-wang/axiomathbf.git
pip install -r requirements.txt

How Does it Work?

  • For each module, I created a class related to the topic of the chapters, like creating the VectorFunction class to solve vector-related problems in chapters 11-12 in the Calculus Early Transcendentals textbook, which talk about Three-Dimensions Space, Vectors, and Vector-Valued Functions.
  • I mainly used Sympy to derive, integrate, and other operations to solve these problems
  • I also used OOP-design, as it allows me to write more clean code

Documentation

Find the documentation at https://aowangphilly.github.io/axiomathbf to learn how to use Axiomathbf

Further Goals

  • I hope to create a Flask web application, so people who aren't familiar with programming can still solve MV problems
  • I also want to create an mobile app that solves Linear Algebra problems using Sympy and OpenCV

License

axiomathbf's People

Contributors

aowangphilly avatar

Stargazers

 avatar

Watchers

 avatar  avatar

axiomathbf's Issues

Refactor multivariate_calculus.py:chain_rule(f,xf,yf,zf,respect,s)

I've selected multivariate_calculus.py:chain_rule(f,xf,yf,zf,respect,s) for refactoring, which is a unit of 16 lines of code and 6 parameters. Addressing this will make our codebase more maintainable and improve Better Code Hub's Keep Unit Interfaces Small guideline rating! ๐Ÿ‘

Here's the gist of this guideline:

  • Definition ๐Ÿ“–
    Limit the number of parameters per unit to at most 4.
  • Whyโ“
    Keeping the number of parameters low makes units easier to understand, test and reuse.
  • How ๐Ÿ”ง
    Reduce the number of parameters by grouping related parameters into objects. Alternatively, try extracting parts of units that require fewer parameters.

You can find more info about this guideline in Building Maintainable Software. ๐Ÿ“–


โ„น๏ธ To know how many other refactoring candidates need addressing to get a guideline compliant, select some by clicking on the ๐Ÿ”ฒ next to them. The risk profile below the candidates signals (โœ…) when it's enough! ๐Ÿ


Good luck and happy coding! :shipit: โœจ ๐Ÿ’ฏ

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.