This directory contains the exercises of the Laboratory of Numeric Simulation A.A. 2022-2023.
In order to execute the comnands described in this file you will need several tools, such as cmake
, make
, gcc
. Please note also that Lesson_10
needs opnmpi
library. On a Debian-based system you can install them with:
sudo apt-get install cmake make gcc opnmpi-bin
cmake
introduces a configuration step, just before the build step. cmake
input consists of CMakeLists.txt files, which describes the project to be built, *.cmake
files, which contains collections of cmake macro that can be used in CMakeLists.txt
for specific tasks, *.in
files that are used as templates for automatically generated files.
-
Clone the project repository onto your local machine using Git or download the zip file and extract it.
-
Open a terminal or command prompt and navigate to the root directory of the project.
-
Create a new directory called "build" (or any other name you prefer), navigate to the build directory and run CMake to generate the build files using the following commands:
mkdir -p build
cd build
cmake ..
- Once CMake has finished generating the build files, you can build the project using the following commands. If you want to compile all the Exercise_XX.X.cpp files contained in all the Lezioni_XX folders, you can use:
make
- Otherwise, if you want to compile a specific file, you can type:
cd Lesson_XX
make Exercise_XX.X.cpp
.
├── 📁 Assignments
│ ├── 📓 LSN_Exercises_01.ipynb
│ ├── 📓 LSN_Exercises_02.ipynb
│ ├── 📓 LSN_Exercises_03.ipynb
│ ├── 📓 LSN_Exercises_04.ipynb
│ ├── 📓 LSN_Exercises_05.ipynb
│ ├── 📓 LSN_Exercises_06.ipynb
│ ├── 📓 LSN_Exercises_07.ipynb
│ ├── 📓 LSN_Exercises_08.ipynb
│ ├── 📓 LSN_Exercises_09.ipynb
│ ├── 📓 LSN_Exercises_10.ipynb
│ ├── 📓 LSN_Exercises_11.ipynb
│ └── 📓 LSN_Exercises_12.ipynb
├── 📁 JupyterNotebooks
│ ├── 📓 Exercises_01.ipynb
│ ├── 📓 Exercises_02.ipynb
│ ├── 📓 Exercises_03.ipynb
│ ├── 📓 Exercises_04.ipynb
│ ├── 📓 Exercises_05.ipynb
│ ├── 📓 Exercises_06.ipynb
│ ├── 📓 Exercises_07.ipynb
│ ├── 📓 Exercises_08.ipynb
│ ├── 📓 Exercises_09.ipynb
│ ├── 📓 Exercises_10.ipynb
│ ├── 📁 Exercises_11
| | ├── 📓 Exercise_11.1.ipynb
| | ├── 📓 Exercise_11.2.ipynb
│ | └── 📓 Exercise_11.3.ipynb
│ └── 📁 Exercises_12
| ├── 📓 Exercise_12.1.ipynb
| └── 📓 Exercises_12.2_12.3.ipynb
├── 📁 Lesson_01
│ ├── 🏗️ CMakeLists.txt
│ ├── 🌟 Exercise_01.1.cpp
│ ├── 🌟 Exercise_01.2.cpp
│ ├── 🌟 Exercise_01.3.cpp
│ ├── 🌟 Library_01.cpp
│ └── 📜 Library_01.h
├── 📁 Lesson_02
│ ├── 🏗️ CMakeLists.txt
│ ├── 🌟 Exercise_02.1.cpp
│ ├── 🌟 Exercise_02.2.cpp
│ ├── 🌟 Library_02.cpp
│ ├── 📜 Library_02.h
│ └── 🐍 sphere.py
├── 📁 Lesson_03
│ ├── 🏗️ CMakeLists.txt
│ ├── 🌟 Exercise_03.1.cpp
│ ├── 🌟 Library_03.cpp
│ └── 📜 Library_03.h
├── 📁 Lesson_04
│ ├── 🏗️ CMakeLists.txt
│ ├── 🌟 Exercise_04.1.cpp
│ ├── 📁 frames
│ ├── 📁 input-output
│ │ ├── 📁 eq
│ │ │ ├── 📄 config.in
│ │ │ ├── 📁 gas
│ │ │ │ └── 📄 input.gas
│ │ │ ├── 📁 liquid
│ │ │ │ └── 📄 input.liquid
│ │ │ └── 📁 solid
│ │ │ └── 📄 input.solid
│ │ ├── 📄 input.gas
│ │ ├── 📄 input.liquid
│ │ └── 📄 input.solid
│ ├── 🌟 Library_04.cpp
│ └── 📜 Library_04.h
├── 📁 Lesson_05
│ ├── 📝 clean.sh
│ ├── 🏗️ CMakeLists.txt
│ ├── 🌟 Exercise_05.1.cpp
│ ├── 📁 input-output
│ │ └── 📄 input.dat
│ ├── 🌟 Library_05.cpp
│ ├── 📜 Library_05.h
│ └── 🌟 try.cpp
├── 📁 Lesson_06
│ ├── 📝 clean.sh
│ ├── 🏗️ CMakeLists.txt
│ ├── 🌟 Exercise_06.1.cpp
│ ├── 📁 input-output
│ │ └── 📄 input.dat
│ ├── 🌟 Library_06.cpp
│ ├── 📜 Library_06.h
│ └── 📝 run_all_temp.sh
├── 📁 Lesson_07
│ ├── 🏗️ CMakeLists.txt
│ ├── 🌟 Exercise_07.1.cpp
│ ├── 📁 input-output
│ │ ├── 📁 eq
│ │ │ ├── 📄 config.in
│ │ │ ├── 📁 gas
│ │ │ │ └── 📄 input.gas
│ │ │ ├── 📁 liquid
│ │ │ │ └── 📄 input.liquid
│ │ │ └── 📁 solid
│ │ │ └── 📄 input.solid
│ │ ├── 📄 input.gas
│ │ ├── 📄 input.liquid
│ │ └── 📄 input.solid
│ ├── 🌟 Library_07.cpp
│ └── 📜 Library_07.h
├── 📁 Lesson_08
│ ├── 🏗️ CMakeLists.txt
│ ├── 🌟 Exercise_08.1.cpp
| ├── 🌟 Exercise_08.2.cpp
│ ├── 🌟 Library_08.cpp
│ └── 📜 Library_08.h
├── 📁 Lesson_09
│ ├── 🏗️ CMakeLists.txt
│ ├── 🌟 Exercise_09.1.cpp
│ ├── 🌟 Library_09.cpp
│ ├── 📜 Library_09.h
│ └── 🐍 create_gif.py
├── 📁 Lesson_10
| ├── 📄 American_capitals.dat
│ ├── 🏗️ CMakeLists.txt
│ ├── 🌟 Exercise_10.1.cpp
│ ├── 🌟 Library_10.cpp
│ ├── 📜 Library_10.h
│ └── 🐍 create_gif.py
├── 📁 random-library
│ ├── 🏗️ CMakeLists.txt
│ ├── 📄 config.final
│ ├── 📄 Primes
│ ├── 📄 primes32001.in
│ ├── 🌟 random.cpp
│ ├── 📜 random.h
│ └── 📄 seed.in
├── 📁 Data
│ └── [...]
├── 📄 README.md
├── 📄 version_config.h.in
└── 🏗️ CMakeLists.txt
📁 folders
🌟 .cpp files
📜 .h files
🏗️ CMakeLists.txt files
📓 Jupyter Notebooks
🐍 .py files
📄 .md, input/output files
📝 .sh files