|
1 | 1 | # DesignSPHysics |
2 | 2 |
|
3 | | -DesignSPHysics is a software module built into [FreeCAD](http://www.freecadweb.org/) that provides a Graphical User Interface for [DualSPHysics](http://dual.sphysics.org/). It is under development since September 2016 and in Beta stage. |
| 3 | +**DesignSPHysics** is an open-source FreeCAD module that provides a comprehensive graphical user interface (GUI) for [DualSPHysics](http://dual.sphysics.org/), a mesh-free particle-based fluid simulation engine based on Smoothed Particle Hydrodynamics (SPH). |
4 | 4 |
|
5 | | -Check the [Official Webpage](http://design.sphysics.org) for downloads and more information. |
| 5 | +Development of DesignSPHysics began in September 2016, and the software is currently in its beta phase. |
| 6 | + |
| 7 | +Visit the [official DesignSPHysics website](http://design.sphysics.org) for downloads, tutorials, and additional information. |
6 | 8 |
|
7 | 9 |  |
8 | 10 |
|
9 | | -## News |
10 | | -### Training courses |
11 | | - * [19th SPHERIC World Conference](https://spheric2025.upc.edu/), Barcelona, Spain, on **16-19 June, 2025**. |
12 | | - * [8th DualSPHysics Workshop](https://dual.sphysics.org/8thworkshop/), Ourense, Spain, on **27-29 January, 2026**. |
13 | | -#### Past events |
14 | | - * [SPH modelling For Engineering applications](https://sites.google.com/view/hykudsph/home?authuser=0), Braunschweig, Germany, on **25-27 March 2025**. |
15 | | - * [4th Hands-on course on experimental and numerical modelling of wave-structure interaction](https://sites.google.com/unifi.it/hands-on-course-2024), Florence, Italy, on **1-5 July 2024**. |
16 | | - * [7th DualSPHysics Workshop](https://dual.sphysics.org/7thworkshop/), Bari, Italy, on **19-21 March, 2024**. |
| 11 | +--- |
17 | 12 |
|
18 | | -### Releases |
19 | | - * [v0.8.0](https://github.com/DualSPHysics/DesignSPHysics/releases/tag/0.8.0) (22-05-2023). See [CHANGELOG file](CHANGELOG.md) |
20 | | - * [v0.7.0](https://github.com/DualSPHysics/DesignSPHysics/releases/tag/0.7.0) (15-09-2023). |
| 13 | +## 📢 News |
21 | 14 |
|
22 | | -## Description |
23 | | -DesignSPHysics enables the user to create cases with solids and fluids and exports it to a DualSPHysics compatible format. In addition, it does the hard work for the user, generating the case data automatically, simulating, and post-processing, all inside FreeCAD. |
| 15 | +### Upcoming Events |
| 16 | +- **[19th SPHERIC World Conference](https://spheric2025.upc.edu/)** — Barcelona, Spain — *June 16–19, 2025* |
| 17 | +- **[8th DualSPHysics Workshop](https://dual.sphysics.org/8thworkshop/)** — Ourense, Spain — *January 27–29, 2026* |
24 | 18 |
|
25 | | -It includes support for pre-processing with GenCase, simulation with DualSPHysics and post-processign with several tools of the DualSPHysics package. |
| 19 | +### Recent Past Events |
| 20 | +- **[SPH Modelling for Engineering Applications](https://sites.google.com/view/hykudsph/home?authuser=0)** — Braunschweig, Germany — *March 25–27, 2025* |
| 21 | +- **[4th Hands-on Course on Experimental and Numerical Modelling of Wave-Structure Interaction](https://sites.google.com/unifi.it/hands-on-course-2024)** — Florence, Italy — *July 1–5, 2024* |
| 22 | +- **[7th DualSPHysics Workshop](https://dual.sphysics.org/7thworkshop/)** — Bari, Italy — *March 19–21, 2024* |
26 | 23 |
|
27 | | -In the future the code will be modular, so integration with different SPH solvers can be used. Right now it's optimized to be used with DualSPHysics |
28 | 24 |
|
29 | | -It is developed as a FreeCAD module with a macro bootstrapper, in Python 3.5+, using the QT libraries via PySide. |
| 25 | +> Visit the [official DesignSPHysics website](https://dual.sphysics.org/training/) for more information. |
30 | 26 |
|
31 | | -## Installation instructions |
32 | | -To install DesignSPHysics you have 2 options: Using the FreeCAD Addon manager for an stable version, or installing manually whatever version that you like from git. |
| 27 | +--- |
33 | 28 |
|
34 | | -### Installing a release version |
35 | | -To install a release version, open FreeCAD 0.18+ and go to the menu *Macro -> Macros...* From there, press the *Addons...* button on the bottom right corner, search for DesignSPHysics and click *Install / Update*. FreeCAD will advise you to reboot the application and you'll be set. |
| 29 | +## 🚀 Latest Releases |
36 | 30 |
|
37 | | -Take in mind that as it includes DualSPHysics, the package may take a while to download. |
| 31 | +- [v0.8.1](https://github.com/DualSPHysics/DesignSPHysics/releases/tag/0.8.1) — *May 27, 2023* ([Changelog](CHANGELOG.md)) |
| 32 | +- [v0.7.0](https://github.com/DualSPHysics/DesignSPHysics/releases/tag/0.7.0) — *September 15, 2023* |
38 | 33 |
|
39 | | -To execute DesignSPHysics just open the same Macro dialog and double click DualSPHysics. |
| 34 | +--- |
40 | 35 |
|
41 | | -### Installing a development build |
42 | | -Clone the branch that you like from this repository and rename the folder to 'DesignSPHysics'. Then copy the folder to the Mod folder of the FreeCAD installation directory. |
| 36 | +## 🧩 Features |
43 | 37 |
|
44 | | -By default, for example, in Windows, it is located in `%appdata%/FreeCAD/Mod` or in Linux in `~/.FreeCAD/Mod` |
| 38 | +DesignSPHysics simplifies the process of setting up, running, and post-processing SPH simulations through an intuitive interface in FreeCAD. Key functionalities include: |
45 | 39 |
|
46 | | -Then copy the file `DesignSPHysics.FCMacro` of this repository into the FreeCAD macro directory (`%appdata%/FreeCAD/Macro` on Windows; `~/.FreeCAD/Macro` on GNU/Linux) |
| 40 | +- Integrated pre-processing with **GenCase** |
| 41 | +- Simulation execution with **DualSPHysics** |
| 42 | +- Post-processing using **DualSPHysics Tools** |
| 43 | +- Case creation with fluid and solid domains |
| 44 | +- Automated data generation and file management |
| 45 | +- Built-in support for Python 3.5+ and Qt via PySide |
| 46 | +- Macro bootstrapper integration with FreeCAD |
47 | 47 |
|
48 | | -## Where to get help |
49 | | -The new [DualSPHysics forum](https://github.com/DualSPHysics/DualSPHysics/discussions) is available for help on using the features available in the solver. |
| 48 | +Future versions will include modular support for additional SPH solvers beyond DualSPHysics. |
50 | 49 |
|
51 | | -You can check the [DesignSPHysics Wiki](http://design.sphysics.org/wiki) to get help. Also, you can post an [issue here on GitHub](https://github.com/DualSPHysics/DesignSPHysics/issues) or send an email to any of the people found in the [CONTRIBUTING file](CONTRIBUTING.md). |
| 50 | +--- |
52 | 51 |
|
53 | | -## Contributing and developing for DesignSPHysics |
54 | | -You can freely contribute to the project, if you want!. You can do it here on GitHub. |
| 52 | +## ⚙️ Setup |
55 | 53 |
|
56 | | -Please check the [CONTRIBUTING file](CONTRIBUTING.md) to view information about how to contribute to the project. |
| 54 | +There are multiple ways to obtain the DesignSPHysics package: |
57 | 55 |
|
58 | | -## Copyright and License |
59 | | -Copyright (C) 2025, |
60 | | -Ivan Martinez Estevez, Andres Vieira |
| 56 | +### 📥 Option 1: Clone the Repository |
61 | 57 |
|
62 | | -EPHYSLAB Environmental Physics Laboratory, Universidade de Vigo |
63 | | -EPHYTECH Environmental Physics Technologies |
| 58 | +Clone the latest development version from GitHub: |
| 59 | +```bash |
| 60 | +git clone https://github.com/DualSPHysics/DesignSPHysics.git |
| 61 | +``` |
| 62 | + |
| 63 | +### 📦 Option 2: Download a Stable Release |
| 64 | + |
| 65 | +Get pre-packaged code from the [GitHub Releases page](https://github.com/DualSPHysics/DesignSPHysics/releases). |
| 66 | + |
| 67 | +--- |
| 68 | + |
| 69 | +### 🔧 DualSPHysics Binaries |
| 70 | + |
| 71 | +> **Important:** Starting with version 0.8.0, DesignSPHysics does **not** include the DualSPHysics binaries. These must be downloaded separately. |
| 72 | +
|
| 73 | +DualSPHysics binaries should be located in `DesignSPHysics/dualsphysics/bin`. |
| 74 | +You can obtain the required binaries using one of the following methods: |
| 75 | + |
| 76 | +- **Option A: Automatically via Setup Script** |
| 77 | + ```bash |
| 78 | + cd DesignSPHysics |
| 79 | + chmod +x setup.sh && ./setup.sh |
| 80 | + ``` |
| 81 | + |
| 82 | +- **Option B: Manually** |
| 83 | + 1. Download `dualsphysics.zip` from the [official DualSPHysics website](https://dual.sphysics.org/sphcourse/DualSPHysics-bin) |
| 84 | + 2. Move the file into the `DesignSPHysics` folder |
| 85 | + 3. Extract the contents |
| 86 | + |
| 87 | +--- |
| 88 | + |
| 89 | +## 🛠 Installation Instructions |
| 90 | + |
| 91 | +### Installing a Development Build |
| 92 | + |
| 93 | +1. Rename the downloaded or cloned folder to `DesignSPHysics` |
| 94 | +2. Move the folder into FreeCAD’s `Mod` directory: |
| 95 | + - **Windows:** `%APPDATA%/FreeCAD/Mod` |
| 96 | + - **Linux:** `~/.FreeCAD/Mod` |
| 97 | +3. Copy the `DesignSPHysics.FCMacro` file into the FreeCAD `Macro` directory: |
| 98 | + - **Windows:** `%APPDATA%/FreeCAD/Macro` |
| 99 | + - **Linux:** `~/.FreeCAD/Macro` |
| 100 | + |
| 101 | +--- |
| 102 | + |
| 103 | +## ▶️ Launching DesignSPHysics |
| 104 | + |
| 105 | +To start using the plugin in FreeCAD: |
| 106 | + |
| 107 | +1. Open **FreeCAD** |
| 108 | +2. Navigate to **Macro → Macros...** |
| 109 | +3. In the `Execute macro` window: |
| 110 | + - Locate and select `DesignSPHysics.FCMacro` |
| 111 | + - Click **Execute** |
| 112 | + |
| 113 | +A new panel labeled **DesignSPHysics** will appear on the right. Follow these steps: |
64 | 114 |
|
65 | | -This file is part of DesignSPHysics. |
| 115 | +4. Click **Setup Plugin** to open the **DSPH Setup** window |
| 116 | +5. DualSPHysics executables should be configured automatically while ParaView executable should be configured manually. |
66 | 117 |
|
67 | | -DesignSPHysics is free software: you can redistribute it and/or modify |
68 | | -it under the terms of the GNU General Public License as published by |
69 | | -the Free Software Foundation, either version 3 of the License, or |
70 | | -(at your option) any later version. |
| 118 | +--- |
71 | 119 |
|
72 | | -DesignSPHysics is distributed in the hope that it will be useful, |
73 | | -but WITHOUT ANY WARRANTY; without even the implied warranty of |
74 | | -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
75 | | -GNU General Public License for more details. |
| 120 | +## 🛠️ Troubleshooting |
| 121 | + |
| 122 | +If you experience issues during installation or launch, residual configuration files from previous installations might be the cause. You should delete them before proceeding. |
| 123 | + |
| 124 | +### Configuration File Locations |
| 125 | + |
| 126 | +- **Windows:** |
| 127 | + ``` |
| 128 | + C:\Users\<user>\AppData\Roaming\FreeCAD |
| 129 | + ``` |
| 130 | + |
| 131 | +- **Linux:** |
| 132 | + ``` |
| 133 | + ~/.config/FreeCAD |
| 134 | + ``` |
| 135 | + |
| 136 | +To manually remove residual files: |
| 137 | +- Use a file manager to delete any `DesignSPHysics`-related files |
| 138 | +- Or, run this command in a terminal (Linux): |
| 139 | + ```bash |
| 140 | + rm ~/.config/FreeCAD/designsphysics* |
| 141 | + ``` |
| 142 | + |
| 143 | +> Replace `<user>` with your actual system username. |
| 144 | +
|
| 145 | + |
| 146 | +--- |
| 147 | + |
| 148 | +## 📚 Documentation & Support |
| 149 | + |
| 150 | +- 📖 [DesignSPHysics Wiki](http://design.sphysics.org/wiki) |
| 151 | +- 💬 [DualSPHysics GitHub Discussions](https://github.com/DualSPHysics/DualSPHysics/discussions) |
| 152 | +- 🐛 [Report Issues on GitHub](https://github.com/DualSPHysics/DesignSPHysics/issues) |
| 153 | +- ✉️ Contact contributors via the [CONTRIBUTING file](CONTRIBUTING.md) |
| 154 | + |
| 155 | +--- |
| 156 | + |
| 157 | +## 🤝 Contributing |
| 158 | + |
| 159 | +We welcome contributions! Whether it’s bug fixes, new features, or documentation improvements, your input is valuable. Please read the [CONTRIBUTING file](CONTRIBUTING.md) for detailed guidelines. |
| 160 | + |
| 161 | +--- |
| 162 | + |
| 163 | +## 📄 License |
| 164 | + |
| 165 | +**DesignSPHysics** is released under the [GNU General Public License v3.0 or later](http://www.gnu.org/licenses/). |
| 166 | + |
| 167 | +``` |
| 168 | +© 2025 Ivan Martinez Estevez, Andres Vieira |
| 169 | +
|
| 170 | +EPHYSLAB Environmental Physics Laboratory, Universidade de Vigo |
| 171 | +EPHYTECH Environmental Physics Technologies |
| 172 | +``` |
76 | 173 |
|
77 | | -You should have received a copy of the GNU General Public License |
78 | | -along with DesignSPHysics. If not, see <http://www.gnu.org/licenses/>. |
| 174 | +> This software is provided “as is,” without warranty of any kind. See the license for details. |
0 commit comments