Skip to content

Commit

Permalink
Merge pull request #28 from JulianVentura/repository-presentation
Browse files Browse the repository at this point in the history
Repository presentation
  • Loading branch information
FrancoBar authored Jan 16, 2024
2 parents 06efdab + bb633e6 commit c8bbfec
Show file tree
Hide file tree
Showing 11 changed files with 250 additions and 1,513 deletions.
127 changes: 126 additions & 1 deletion README.md
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
```
37 changes: 37 additions & 0 deletions plotter/README.md
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
```



58 changes: 39 additions & 19 deletions preprocessor/README.md
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
```
2 changes: 0 additions & 2 deletions preprocessor/models/.gitignore

This file was deleted.

39 changes: 0 additions & 39 deletions preprocessor/models/cube.json

This file was deleted.

Loading

0 comments on commit c8bbfec

Please sign in to comment.