-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #28 from JulianVentura/repository-presentation
Repository presentation
- Loading branch information
Showing
11 changed files
with
250 additions
and
1,513 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,126 @@ | ||
# TrabajoProfesional | ||
|
||
|
||
<p align="center"> | ||
<img src="./user-gui/public/icons/agni.png" width=256> | ||
</p> | ||
<p align="center"> | ||
<font color="#9A0C0C" size=5><i>Parallelized Satellite Thermal Analysis System</i></font> | ||
</p> | ||
|
||
|
||
**This is the code repository of AGNI B3V. For install instructions, user/technical manuals and benchmarks visit the website: https://agnib3v.github.io/** | ||
|
||
|
||
|
||
## Introduction | ||
|
||
Agni B3V is an all encompassing solution for modeling, simulating and interpreting thermal phenomena affecting satellites in circular orbits and sun pointing aptitudes. It currently includes tools capable of: | ||
|
||
* Building satellite structure meshes through primitives union or individual node placement and connection. | ||
* Automatically remeshing models to improve FEM results. | ||
* Assigning different materials and conditions to separate parts of the model. | ||
* Configuring desired orbit and constants such as earth ir emission, albedo and sun intensity. | ||
* Estimating view factors and energy exchange between elements and between elements and other celestial bodies. | ||
* Simulating second by second temperature modification in an specified interval of time and orbit. | ||
* Postprocessing results and extracting relevant data and graphs. | ||
|
||
|
||
|
||
## Authors | ||
|
||
This system was developed in the context of the professional task for "Universidad de Buenos Aires" by: | ||
|
||
Barreneche Franco ([email protected]) | ||
|
||
Belinche Gianluca ([email protected]) | ||
|
||
Botta Guido ([email protected]) | ||
|
||
Ventura Julian ([email protected]) | ||
|
||
|
||
|
||
## Building from source | ||
|
||
A convenient installer is provided in the [user manual](https://agnib3v.github.io/user_manual/installation/installation.html). | ||
|
||
Alternatively, each tool install and basic usage is described in its respective folders README. | ||
|
||
It is possible to install all required python modules from the root folder: | ||
|
||
```bash | ||
pip install -r requirements.txt | ||
``` | ||
|
||
To be able to access all functions from the user GUI, install third party software as described in the following section. | ||
|
||
|
||
|
||
## Installing third party software | ||
|
||
All commands must be run from the root folder. | ||
|
||
|
||
|
||
### FreeCAD + Agni Workbench | ||
|
||
#### Install FreeCAD | ||
|
||
```bash | ||
curl -L -o FreeCAD 'https://github.com/FreeCAD/FreeCAD/releases/download/0.21.1/FreeCAD_0.21.1-Linux-x86_64.AppImage' | ||
chmod +x FreeCAD | ||
mkdir _FreeCAD | ||
mv FreeCAD ./_FreeCAD | ||
mv _FreeCAD FreeCAD | ||
``` | ||
|
||
#### Install Gmsh | ||
|
||
```bash | ||
curl -L -o gmsh.tgz "https://gmsh.info/bin/Linux/gmsh-4.12.0-Linux64.tgz" | ||
tar -xf gmsh.tgz | ||
sudo mv -f gmsh-4.12.0-Linux64/bin/gmsh /usr/bin | ||
rm -rf gmsh-4.12.0-Linux64 | ||
rm -rf gmsh.tgz | ||
``` | ||
|
||
|
||
|
||
#### Install Agni Workbench | ||
|
||
Install for the current user: | ||
|
||
```bash | ||
export FREECAD_DIRECTORY="~/.local/share/FreeCAD" | ||
mkdir -p "${FREECAD_DIRECTORY}/Mod" | ||
cp -r "freecad/Agni" "${FREECAD_DIRECTORY}/Mod/Agni" | ||
``` | ||
|
||
Install to run with sudo privileges: | ||
|
||
```bash | ||
export FREECAD_DIRECTORY="/root/.local/share/FreeCAD" | ||
sudo mkdir -p "${FREECAD_DIRECTORY}/Mod" | ||
sudo cp -r "freecad/Agni" "${FREECAD_DIRECTORY}/Mod/Agni" | ||
``` | ||
|
||
|
||
|
||
### GMAT | ||
|
||
```bash | ||
curl -L -o gmat.tar.gz "https://sourceforge.net/projects/gmat/files/GMAT/GMAT-R2022a/gmat-ubuntu-x64-R2022a.tar.gz/download" | ||
tar -xf gmat.tar.gz | ||
rm -rf gmat.tar.gz | ||
``` | ||
|
||
|
||
|
||
### Paraview | ||
|
||
```bash | ||
curl -L -o paraview.tar.gz "https://www.paraview.org/paraview-downloads/download.php?submit=Download&version=v5.12&type=binary&os=Linux&downloadFile=ParaView-5.12.0-RC1-MPI-Linux-Python3.10-x86_64.tar.gz" | ||
tar -xf paraview.tar.gz | ||
mv ParaView*x86_64 ParaView | ||
rm -rf paraview.tar.gz | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
# Plotter | ||
|
||
|
||
|
||
## Installation | ||
|
||
Install Python 3.10. The recommended way is [Pyenv](https://github.com/pyenv/pyenv) | ||
|
||
```bash | ||
pyenv install 3.10 -s | ||
pyenv local 3.10 | ||
``` | ||
Install requirements: | ||
|
||
```bash | ||
pip install -r requirements.txt | ||
``` | ||
|
||
|
||
## Usage | ||
|
||
**Open user GUI** | ||
|
||
```bash | ||
python UI.py | ||
``` | ||
|
||
|
||
|
||
**Open user GUI with specific initial file** | ||
|
||
```bash | ||
python UI.py /path/to/file | ||
``` | ||
|
||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,47 +1,67 @@ | ||
# Preprocessor | ||
|
||
### Installation | ||
|
||
Install python 3.10.12 and run the following command. | ||
|
||
```sh | ||
## Installation | ||
|
||
Install Python 3.10. The recommended way is [Pyenv](https://github.com/pyenv/pyenv) | ||
|
||
```bash | ||
pyenv install 3.10 -s | ||
pyenv local 3.10 | ||
``` | ||
Install requirements: | ||
|
||
```bash | ||
pip install -r requirements.txt | ||
``` | ||
|
||
### Execution | ||
|
||
- **Processing of view factors** | ||
|
||
It can be done by passing file paths as: | ||
## Usage | ||
|
||
```sh | ||
main process mesh_file_path properties_file_path gmat_report_file_path gmat_eclipse_file_path view_factors_file_path | ||
|
||
|
||
**View factor processing** | ||
|
||
```bash | ||
python main.py process <directory-path> | ||
``` | ||
|
||
- **Viewing mesh assigned materials** | ||
Required files: mesh.vtk, properties.json, ReportFile.txt, EclipseLocator.txt. | ||
|
||
|
||
```sh | ||
main viewm mesh_file_path properties_file_path | ||
|
||
**Mesh normals direction display** | ||
|
||
```bash | ||
python main.py viewn <directory-path> | ||
``` | ||
|
||
Requires a color property per material on properties_file_path. | ||
Required files: mesh.vtk | ||
|
||
|
||
|
||
- **Viewing "view factors" corresponding to element_id** | ||
**Assigned materials display** | ||
|
||
```sh | ||
main viewvf mesh_file_path properties_file_path element_id | ||
```bash | ||
python main.py viewm <directory-path> | ||
``` | ||
|
||
### Tests | ||
Required files: mesh.vtk, properties.json | ||
|
||
|
||
|
||
### Test | ||
|
||
Install pytest: | ||
|
||
```sh | ||
```bash | ||
pip install pytest | ||
``` | ||
|
||
And run the following command: | ||
Execute tests: | ||
|
||
```sh | ||
```bash | ||
pytest | ||
``` |
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
Oops, something went wrong.