Skip to main content

UBC Solar's Simulation Environment

Project description

UBC Solar Physics

Documentation Status

UBC Solar's physics and environment models for simulating our groundbreaking solar cars.

The API is currently unstable, and backwards compatibility may not be maintained.

Requirements

Versions indicated are recommended

  • Git [^1]
  • Python >=3.9 [^2]
  • Rustc >=1.79.0 [^3]
  • Cargo >=1.79.0 [^4]

Installation

First, clone this repository.

git clone https://github.com/UBC-Solar/physics.git

Then, create and activate a virtual environment. Next, install dependencies in editable mode.

pip3 install -e .

Getting Started

Example of calculating solar arrays produced energy

from physics.models.arrays import BasicArray
import numpy as np

efficiency = 0.25  # 25.0% efficient
panel_size = 4.0   # 4.0m^2 of panels
tick = 1.0         # 1.0s interval

arrays = BasicArray(panel_efficiency=efficiency, panel_size=panel_size)

irradiance = np.full([5], 400.0)  # 10 seconds of 400.0W/m^2 irradiance

solar_power_produced = arrays.calculate_produced_energy(solar_irradiance=irradiance, tick=tick)

assert np.array_equal(solar_power_produced, np.array([400.0, 400.0, 400.0, 400.0, 400.0]))

Appendix

[^1]: use git --version to verify version

[^2]: use python3 --version to verify version

[^3]: use rustc --version to verify version

[^4]: use cargo --version to verify version

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

ubc_solar_physics-1.2.0.tar.gz (15.2 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

ubc_solar_physics-1.2.0-cp313-cp313-win_amd64.whl (208.5 kB view details)

Uploaded CPython 3.13Windows x86-64

ubc_solar_physics-1.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (368.8 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

ubc_solar_physics-1.2.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (376.5 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

ubc_solar_physics-1.2.0-cp312-cp312-win_amd64.whl (208.5 kB view details)

Uploaded CPython 3.12Windows x86-64

ubc_solar_physics-1.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (368.8 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

ubc_solar_physics-1.2.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (376.5 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

ubc_solar_physics-1.2.0-cp311-cp311-win_amd64.whl (208.9 kB view details)

Uploaded CPython 3.11Windows x86-64

ubc_solar_physics-1.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (368.3 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

ubc_solar_physics-1.2.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (376.7 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

ubc_solar_physics-1.2.0-cp310-cp310-win_amd64.whl (208.9 kB view details)

Uploaded CPython 3.10Windows x86-64

ubc_solar_physics-1.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (368.2 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

ubc_solar_physics-1.2.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (376.8 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

ubc_solar_physics-1.2.0-cp39-cp39-win_amd64.whl (209.2 kB view details)

Uploaded CPython 3.9Windows x86-64

ubc_solar_physics-1.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (368.8 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

ubc_solar_physics-1.2.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl (377.1 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ i686manylinux: glibc 2.5+ i686

File details

Details for the file ubc_solar_physics-1.2.0.tar.gz.

File metadata

  • Download URL: ubc_solar_physics-1.2.0.tar.gz
  • Upload date:
  • Size: 15.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.21

File hashes

Hashes for ubc_solar_physics-1.2.0.tar.gz
Algorithm Hash digest
SHA256 8203fdaaa32255e723e8f3b52ddc38feb4c52ae903efc10441486cb7c1d6c0a6
MD5 aacd0a376b882445f4a8c503d537118c
BLAKE2b-256 0e978a838e8ef4aa82d49dfe547f20e4d249f01ba24fbc7f178c6b92fe0291ed

See more details on using hashes here.

File details

Details for the file ubc_solar_physics-1.2.0-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for ubc_solar_physics-1.2.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 018ea846a7e05e7689ef1003dd14e0c52a21f30c2045c0ffd323fc056c017669
MD5 f575aa369d56155d1d02b253c6e65301
BLAKE2b-256 bb0d3df518fc5e0df85dee7ee7f9d922e73fdca9b9aebf7bf9e9a62649f042c2

See more details on using hashes here.

File details

Details for the file ubc_solar_physics-1.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ubc_solar_physics-1.2.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0df23061c7acda1146ac3078e5f0458e78d153793032a586a01f7506afe16138
MD5 052e2cb242e912c7427bb2b31a2f445f
BLAKE2b-256 f8cf84106e8ecae1f6fdafb6df4bc1d0338b55e6f8dc0ed89459f467b48d9c40

See more details on using hashes here.

File details

Details for the file ubc_solar_physics-1.2.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ubc_solar_physics-1.2.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 e84fd41c7104c8d6f30174278937c5fa14736b65719b2af1e3092f0493176ff3
MD5 2eeb06e56b10a559b49b5d0b6f355184
BLAKE2b-256 ad57ece38b4e20d5a9b4dcd09355a014e402f0de8a7ab33dd27c3bf764991f21

See more details on using hashes here.

File details

Details for the file ubc_solar_physics-1.2.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for ubc_solar_physics-1.2.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 70953d6184f23b57d1ab2d7c5ba9951cb1040f1dabb390516a8e808c385fbe21
MD5 6904a6943f3aa146229e60951f4ce005
BLAKE2b-256 92d6b9a2792b6837f23d6851dc535d7162422ce389030cf7140ad6dd32af3fe7

See more details on using hashes here.

File details

Details for the file ubc_solar_physics-1.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ubc_solar_physics-1.2.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 aafe3e8727b13bfe1a32a3e8c32f2be4c85d98ae2128f800c454356bba9e4ff8
MD5 f0d7941628874dff118f0f119d6eac27
BLAKE2b-256 d016b5aa93ae54d2490e310dac0ad7cff7c368f875e9c5389e31c17fbf2a2ac9

See more details on using hashes here.

File details

Details for the file ubc_solar_physics-1.2.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ubc_solar_physics-1.2.0-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 6fa73a187de83d24e14374d6715b10eedf55cee8e97e4b81fe8e6b73d2fe4949
MD5 d10778a197dac9991920c4bac4094817
BLAKE2b-256 7524927c462b76e755e227e3abec445338204d6e7193d9ba61995df7e5dd05f2

See more details on using hashes here.

File details

Details for the file ubc_solar_physics-1.2.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for ubc_solar_physics-1.2.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 da58431c18da90a9d57de33836b3f578398191fc7785b4b0473c8541123528fe
MD5 55069d178a5898d8f34da89732457924
BLAKE2b-256 bc78bb1df94f23f8cd2e8e61f3622313aada3cd63d79df7fe3366eb14bd8a87c

See more details on using hashes here.

File details

Details for the file ubc_solar_physics-1.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ubc_solar_physics-1.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a16e7e2a19191efafc8fd915a56a40153f5b9b425353878903153fd60c108a2b
MD5 9827e94af4343b3d1934a2744109ecc9
BLAKE2b-256 3bb8fce8b16b362fdf2b5e68524a759c4e372c742d9dca1caff577f94ed70ecc

See more details on using hashes here.

File details

Details for the file ubc_solar_physics-1.2.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ubc_solar_physics-1.2.0-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 378c1d460586a2ed2b6717819bcdeb4087ce147550ccc3530880ff33c0a17080
MD5 76d0b2a5c326dda5e02233a6e5b31312
BLAKE2b-256 301cfd861c7aa3039f3d3cb0733ba5bff48cb9c189f521c247736471d419aa65

See more details on using hashes here.

File details

Details for the file ubc_solar_physics-1.2.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for ubc_solar_physics-1.2.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 aa2daca976d41879265b807245ee2c9798824582796af1c1aa1ad75c4cf0b702
MD5 a884e8d55eb2621b700dd758fefd5806
BLAKE2b-256 c600460267f58709d4857cdea1a580f37bf547b121714e391a38dd2ac4359975

See more details on using hashes here.

File details

Details for the file ubc_solar_physics-1.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ubc_solar_physics-1.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 54bae80cb2202a37699ba4e65d9b88c3bbb45c5bc38b5e4f7d3c3cc225797630
MD5 1ef8ba1d6b544ef68ee7caf169d30506
BLAKE2b-256 dfa8ed906928cef0a294cf8fa14c50d34a17eb76a6ba0b7d59e3b1769c77459a

See more details on using hashes here.

File details

Details for the file ubc_solar_physics-1.2.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ubc_solar_physics-1.2.0-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 c5545466030e5c15b8ebdf1a11b3956c81ca606035474d559c394a59a157ccb5
MD5 dca74b58c807a73ecbf14d7cb4d41d8a
BLAKE2b-256 5c770c2a7ec0e8fb7ef69354ef51ca0f37791cb85a7a62165788bd60793c17cc

See more details on using hashes here.

File details

Details for the file ubc_solar_physics-1.2.0-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for ubc_solar_physics-1.2.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 54cdc74341d83a5043a5a7e0e7a92214d404e0bec7bd180625434fe86d458ce5
MD5 a98a872f11222ead23272508616a255f
BLAKE2b-256 20017ddfa09a0877d749db5f3d93cb3a0896ed6e4f7e55f7b5e95fe7ea47fb3c

See more details on using hashes here.

File details

Details for the file ubc_solar_physics-1.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for ubc_solar_physics-1.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b54c222e7ce69a21ae69549728f1e892a5847bcf1e89f871fbbf721a2a356332
MD5 375494fe6e82ba2b5008c09ccdbe05ff
BLAKE2b-256 8cdd7167752524a58278aec8578a98a6804a28aed9ce1d96f42d48604f4d8dee

See more details on using hashes here.

File details

Details for the file ubc_solar_physics-1.2.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl.

File metadata

File hashes

Hashes for ubc_solar_physics-1.2.0-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl
Algorithm Hash digest
SHA256 4c6572bc95a68494206a5a20632c99361196d70c40ac25225599584ded3f9467
MD5 6a0f90f2f028861b323f489c535a4ecb
BLAKE2b-256 be687f614c64c46635b9359d7b21d7a16f877e765a25514d3ddcb05d85a4a02b

See more details on using hashes here.

Supported by

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