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.7.7.tar.gz (22.5 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.7.7-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (380.1 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ x86-64

ubc_solar_physics-1.7.7-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (364.2 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.17+ ARM64

ubc_solar_physics-1.7.7-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (380.1 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

ubc_solar_physics-1.7.7-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (364.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ ARM64

ubc_solar_physics-1.7.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (380.2 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

ubc_solar_physics-1.7.7-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (364.0 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ ARM64

ubc_solar_physics-1.7.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (380.1 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

ubc_solar_physics-1.7.7-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (363.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ ARM64

ubc_solar_physics-1.7.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (380.4 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

ubc_solar_physics-1.7.7-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (364.1 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ ARM64

File details

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

File metadata

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

File hashes

Hashes for ubc_solar_physics-1.7.7.tar.gz
Algorithm Hash digest
SHA256 1b187ae0593041de90a2e6b861336b1c875ca69e1ca0735e98e45bb264b71317
MD5 3b696433c85bd8476fdb8695d8128235
BLAKE2b-256 214034d7c898503a59ff1d9c7bc1459f8e2b3b4b97baf53b97d5c179d7453c33

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ubc_solar_physics-1.7.7-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 c4bc0805486fd4ab4505b61706d03ae438de89f044f8bffd7b7ea5fcb62bec50
MD5 f7d280d80af704b78f485ab7d2b7ec58
BLAKE2b-256 02181610219cfac6ef3800dee4ede5154dfe373a0069ce4d66e1dcd981773ea1

See more details on using hashes here.

File details

Details for the file ubc_solar_physics-1.7.7-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ubc_solar_physics-1.7.7-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5e9cc9c0da7ea6026143ef3e054b1f589f9c58d0ae9e1238ffb86223fd5ee479
MD5 a0460a4d5f5cba0f64d87c4310f8f356
BLAKE2b-256 98f9a95806a247a3f89a4bc3f172f5e4013feeffd48167237e6fb76c55a1d468

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ubc_solar_physics-1.7.7-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a9dfc7135bea6e6f243574980f76dc91aeb78ab5e746dbd1738175a61a136d3f
MD5 ff3091a701afcdf0afdd039520b3a244
BLAKE2b-256 c29423e77b7626d58bfa5528c64a5809a36abefb8af8d3d6af1bad5922f1004d

See more details on using hashes here.

File details

Details for the file ubc_solar_physics-1.7.7-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ubc_solar_physics-1.7.7-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d82474ef6262497e4424f7a1bd872a9f87e53dac1a7041d90bc848ec384e6727
MD5 97423c0ad252adc78e3a3f9585647c3a
BLAKE2b-256 f0c6d1d7bc1c5624c3ca0d9c5496dca2407e7d7c03f2c4ba06d7f6c97f5c2f0c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ubc_solar_physics-1.7.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b9059921c4588b2fa09733f7b03ed226f8adc1ee6a2320e74552384e6fd121bc
MD5 6fdd7eb133f460f93102fd86f3bc1bb1
BLAKE2b-256 7c46ed330d06044a568a5c7a833dad509095bc281bd0c020bd7813593016523e

See more details on using hashes here.

File details

Details for the file ubc_solar_physics-1.7.7-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ubc_solar_physics-1.7.7-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 c0e93218157d79b3b02f2dc93442ea872e482275e7ae84050e0bbc8a60a9ee8b
MD5 0fa84ef8bddab6979c80b185f3a366d8
BLAKE2b-256 d456be23bcb64544f72b29be0496c8feeab643b97c6e9c409f1a7fd83ed1c5f2

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ubc_solar_physics-1.7.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b2b040f11bf641f6d0e30429fe248e6fbd62a11349a116c7d5e52932560ed51f
MD5 e360960a675badfd15d6883054e90bf8
BLAKE2b-256 5f3078851d8f7d3ff5f9857e8c3e3b03bd7ca4018d2caf0d6588c8e1c14f7791

See more details on using hashes here.

File details

Details for the file ubc_solar_physics-1.7.7-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ubc_solar_physics-1.7.7-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 d0e4f95538d15b97175b2252fbdc4488b8289412426639c748caed0765915b3e
MD5 5123748a51c88ba3fdf66599ebcbde38
BLAKE2b-256 cca3e107a31d2d49a408d7d4c8acb0491cdcff795739dea9f4ec44643f2ca31c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for ubc_solar_physics-1.7.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 53f2f4ff107c18a1950af7976f417511b53b4353534429a294a929432ff702f6
MD5 3a0c67315bbad17792f51a78d8e8f42f
BLAKE2b-256 8b5258ea1222cf3a81a8d999a7c3ce62c278f5584e75a41bd6f7def8b007d539

See more details on using hashes here.

File details

Details for the file ubc_solar_physics-1.7.7-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for ubc_solar_physics-1.7.7-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f62b8086eacb2f9f1e104a1ec097ceb470a01ccbed58b3cb38931ce7d3f5da0d
MD5 c3528cc54ad8b48ac11aab872e260090
BLAKE2b-256 f25098edcf50a2225d13d43fc6ff1fb0bc18ca0e5ce996b439854086c5c0df00

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