Skip to main content

Lab 1 - Solar System Model

Постановка задания:

Предметная область: исследование и моделирование космических объектов в солнечной системе.

Важные сущности: солнце, планеты, спутники, кометы, астероиды, космический аппарат.

Операции: операция исследования движения планет, операция моделирования орбит, операция изучения атмосфер и поверхностей планет, операция запуска космических аппаратов, операция сбора данных.

  ______             __                             ______                         __                             
 /      \           /  |                           /      \                       /  |                            
/$$$$$$  |  ______  $$ |  ______    ______        /$$$$$$  | __    __   _______  _$$ |_     ______   _____  ____  
$$ \__$$/  /      \ $$ | /      \  /      \       $$ \__$$/ /  |  /  | /       |/ $$   |   /      \ /     \/    \ 
$$      \ /$$$$$$  |$$ | $$$$$$  |/$$$$$$  |      $$      \ $$ |  $$ |/$$$$$$$/ $$$$$$/   /$$$$$$  |$$$$$$ $$$$  |
 $$$$$$  |$$ |  $$ |$$ | /    $$ |$$ |  $$/        $$$$$$  |$$ |  $$ |$$      \   $$ | __ $$    $$ |$$ | $$ | $$ |
/  \__$$ |$$ \__$$ |$$ |/$$$$$$$ |$$ |            /  \__$$ |$$ \__$$ | $$$$$$  |  $$ |/  |$$$$$$$$/ $$ | $$ | $$ |
$$    $$/ $$    $$/ $$ |$$    $$ |$$ |            $$    $$/ $$    $$ |/     $$/   $$  $$/ $$       |$$ | $$ | $$ |
 $$$$$$/   $$$$$$/  $$/  $$$$$$$/ $$/              $$$$$$/   $$$$$$$ |$$$$$$$/     $$$$/   $$$$$$$/ $$/  $$/  $$/ 
                                                            /  \__$$ |                                            
                                                            $$    $$/                                             
                                                             $$$$$$/                                              
                         __       __                  __            __                                            
                        /  \     /  |                /  |          /  |                                           
                        $$  \   /$$ |  ______    ____$$ |  ______  $$ |                                           
                        $$$  \ /$$$ | /      \  /    $$ | /      \ $$ |                                           
                        $$$$  /$$$$ |/$$$$$$  |/$$$$$$$ |/$$$$$$  |$$ |                                           
                        $$ $$ $$/$$ |$$ |  $$ |$$ |  $$ |$$    $$ |$$ |                                           
                        $$ |$$$/ $$ |$$ \__$$ |$$ \__$$ |$$$$$$$$/ $$ |                                           
                        $$ | $/  $$ |$$    $$/ $$    $$ |$$       |$$ |                                           
                        $$/      $$/  $$$$$$/   $$$$$$$/  $$$$$$$/ $$/                                                       

Программа

Программа представляет собой модель предметной области Солнечной Системы, позволяющую просматривать данные об объектах Солнечной Системы, удалять текущие, создавать новые. Взаимодействие с программой осуществляется через консоль.

Основные классы

Основной класс - Celestial Body
Он представляет собой базовый класс для всех тел, присутствующих в солнечной системе
Имеет поля:

  • name - имя объекта
  • mass - масса объекта
  • radius - радиус объекта
  • position - координаты позиции объекта

Классы Planet, Comet, Satellite, Asteroid, Sun, Spacecraft наследуются от Celestial Body \

Spacecraft - Класс, с помощью которого происходит сбор данных с космических тел.
Наделен функционалом:

  • Завести двигатель
  • Путешествовать к объекту
  • Считывать данные с текущего объекта
  • Просматривать количество топлива
  • Пополнять топливо, если необходимо

Данные, вводимые пользователем валидируются. Ошибки отлавливаются благодаря исключениям:
exceptions.custom_exceptions.py:

  • InvalidMassError
  • InvalidRadiusError
  • InvalidPositionError
  • InvalidTemperatureError
  • InvalidSurfaceError
  • InvalidLuminosityError
  • InvalidCoreDiameterError 
    и так далее

Metadata

Release files for solar-system-simulator 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for solar-system-simulator 0.1.1
File Size Uploaded
solar_system_simulator-0.1.1.tar.gz 18.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for solar-system-simulator 0.1.1
File Interpreter ABI Platform
solar_system_simulator-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 38.0 kB

Release files / solar_system_simulator-0.1.1.tar.gz

Download URL solar_system_simulator-0.1.1.tar.gz
Size 18.2 kB
Tags Source
SHA-256 checksum
How to use checksums
f1d3b553a2346b9136c8abf52ced9c78a10fa38589189146aecef9611a2362d8
BLAKE2b-256 checksum
How to use checksums
9ffdd99ce5be6cad45b7c2f8b11f0eb10e08e3d4119a5e9a4fcc7cab2da4901c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.2

Release files / solar_system_simulator-0.1.1-py3-none-any.whl

Download URL solar_system_simulator-0.1.1-py3-none-any.whl
Size 19.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7e77d1cb1f2f39ac1d4a119212d9fa6d6762d01813f36a70dfb1d3c38838836a
BLAKE2b-256 checksum
How to use checksums
ae8b105cb2979aa3109f26a446ee33fb0e356b8b7a749de806a0841b683e104a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.2

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page