Prefer a video together with these written instructions? Then see: youtube.
DAVE runs on python. So the first step is to install python. The easiest way of doing this is by downloading and installing the Miniconda distribution. Miniconda can be downloaded from https://docs.conda.io/en/latest/miniconda.html. Pick python version 3.7 or higher.
During the installation you can select the “just for me” option. This means that admin-rights are not needed.
It is not needed to register or add anaconda to the path, although registering doesn’t hurt if this is the only python installation on your machine.
The installation should create a menu entry called “Anaconda Prompt (miniconda3). This can be used to start a command prompt with the just installed python registered as default.
Install required packages
DAVE needs a number of common python packages to work. These can be installed using the conda and pip package managers.
Start the command prompt via the “Anaconda Prompt (miniconda3)” as above.
First thing to do is to make everything up-to-date. This is done by running the following command:
conda update conda
press y [enter] to proceed
Then install the following packages via conda:
conda install -c conda-forge dave xarray
this will now display a list of packages that will be downloaded and installed. Press y [enter] to continue.
This takes enough time to go for a cup of coffee. Enjoy.
Note: many of these packages can also be installed using pip, however the pip version of vtk (8.1.2) is not compatible with pyside2 and will not work. So USE CONDA
Next step is to install the packages that are not (yet) available on conda-forge: vtkplotter and mafredo
pip install vtkplotter mafredo
Alternatively you may also create a new conda environment for DAVE. This is done by downloading the DAVE environment file from github (https://raw.githubusercontent.com/RubendeBruin/DAVE/master/dave.yml) and running the following command:
conda env create -f dave.yml
This creates a new environment name “dave”
This environment can then be activated using:
then either clone DAVE from github and add the /src directory to the (python)path
install dave using
pip install useDAVE
One last step is to install pyo3d. This is the closed-source component of DAVE and contains the core functionality for geometry and equilibrium calculations.
Pyo3d can be used for free as long as it is in beta. The current version will work until July 2020. It is my intention to keep pyo3d as free as possible for as many people as possible. But since the offshore industry is not a large contributor of to the open-source community, and I need to eat as well and kite as well, it will most probably not be free for use for commercial purposes.
The beta-version of pyo3d can be downloaded via the following link:
This downloads a file with a .pyd extension. Pyd files are compiled python packages, a bit like windows .dlls.
This file needs to be saved somewhere where python can find it. The best location would be:
C:\location_where_you_installed_miniconda\Lib\site-packages\pyo3d.pyd or (when using a custom environment) C:\location_where_you_installed_miniconda\envs\env_name\Lib\site-packages\pyo3d.pyd
Start the GUI
The GUI is not the main part of DAVE. But it is the easiest place to start. To start the gui directly from the command prompt use:
python -m DAVE.run_gui
Alternatively the gui can be started from python as well. In that case use:
from DAVE.run_gui import run run()
Blender is an excellent and free tool for 3d modeling, the artist way. It can be used for creating visuals checking meshes and for rendering DAVE scenes.
Blender can be obtained from https://www.blender.org/
After installing blender, make sure that windows is configured to open .blend files using blender. For example by downloading this blender file, double-clicking it, and, if it doesn’t automatically open with blender, select blender and program to open .blend files with.
See this section in the documentation
If you are having troubles installing DAVE then let us know, either by leaving a comment on this page or by opening an issue on the github page.