Skip to main content

Clean looking engineering calculations for IPython

Project description

ipycalc

Simple Engineering Calculations in Python

Turn the contents of a Jupyter cell into a formatted calculation by following the steps below:

  1. Install ipycalc using pip install ipycalc
  2. Use from ipycalc import calc to bring ipycalc into your notebook's namespace.
  3. Use %%calc as the first line of a cell to indicate that you want to run ipycalc on the contents of a cell.

The basic calculation syntax is:

Variable Description: variable_name = python_expression -> result_decimal_places*result_unit # Reference Text

Here's a simple example that calculates the flexural strength of a concrete beam:

Example

Key components of the ipycalc syntax are:

  • : (required) The description must come before this character.
  • = (optional) Used to assign a python expression to a variable name. Omit this if you simply want to reprint a previously defined variable.
  • -> (optional) Separates the python expression from the results formatting rules.
  • * (optional) Indicate the number of decimals you want to see in the result to the left of the *, and the units you want to see in the result to the right.
  • # (optional) Indicates reference text to the side of the calculation - handy for equation references or code references.

Here are a few useful things to keep in mind when using ipycalc:

  • Subscripts can be added by using the _ character to indicate the start of a subscript.
  • Greek characters included in the python_expression can just be written out (e.g. epsilon). To include greek characters in the Variable Description or the Reference Text, you can use Jupyter's Markdown Latex tags (e.g. $\epsilon$).
  • To stack fractions place the numerator and denominater in parentheses: (num)/(denom) yields $\dfrac{num}{denom}$.
  • If statements and else statements are available using python's inline if statement notation.
  • Square roots can be displayed using sqrt.
  • Prime characters can be displayed using ^prime.
  • If text gets to lengthy to fit on one line, you can add \\ to force a line break anywhere in a line. This can help your calculations fit within the page's print margins.
  • ipycalc assists you with printing your notebooks. It has a built in nbconvert template called ipycalc that works just like the webpdf template, except it fixes the the bad margins in the webpdf template, and avoids page breaks right after headers. Any cells tagged with hide_cell will not be rendered. Any cells tagged with hide_input will only show the output upon printing. You can select it from the file menu via "File -> Save and Export Notebook As... -> Ipycalc"

IPycalc is still in development. There could be bugs, so be cautious and validate the answers it gives you. A special thanks to @connorferster for his project handcalcs which inspired this project. A link to handcalcs is here: https://github.com/connorferster/handcalcs.

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

ipycalc-0.0.58.tar.gz (124.7 kB view details)

Uploaded Source

Built Distribution

ipycalc-0.0.58-py3-none-any.whl (132.6 kB view details)

Uploaded Python 3

File details

Details for the file ipycalc-0.0.58.tar.gz.

File metadata

  • Download URL: ipycalc-0.0.58.tar.gz
  • Upload date:
  • Size: 124.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for ipycalc-0.0.58.tar.gz
Algorithm Hash digest
SHA256 e5e98f8fb0f901b807ff7efa2e193264e12cbcc3344bae9abcb2e5e9b0f70bf5
MD5 e04112bab4b1ff4086d5fd11ee3572c4
BLAKE2b-256 c82cfeb40069b1074cd9c8762ed2d2dd0d5a580c0de2d5825999dce4f38e7505

See more details on using hashes here.

File details

Details for the file ipycalc-0.0.58-py3-none-any.whl.

File metadata

  • Download URL: ipycalc-0.0.58-py3-none-any.whl
  • Upload date:
  • Size: 132.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for ipycalc-0.0.58-py3-none-any.whl
Algorithm Hash digest
SHA256 c142f7f30da96986a0ef6c09098dcd54de04f3511214ce126cb20cb9e24f139c
MD5 9a69fe4ecd3066a264be8f3b74e19e2d
BLAKE2b-256 cb97c8034758a7bf0a20a59d988c5d61e9bec196ad584569d7b05264c1e301c7

See more details on using hashes here.

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