Welcome,
In this blog I am trying to gather all the necessary notes that we frequently need to refer to for setting up a development environment for our project RBSM in OOFEM (OORBS). I hope that you will as well find these notes useful.
Running first analysis with OOFEM/OORBS
To run the analysis, you simply put the input file in the desired working directory and provide the file name to OOFEM with execution arguments “-f filename”. The working directory is where the OOFEM will execute and create the output files. You can keep the input files in the same directory. Select the OOFEM from…
Keep readingChecklist for setting up OOFEM/OORBS on MacOS
Here is the checklist for setting up the basic developer environment on a Mac PC for OOFEM (for the colleagues who want to contribute to the RBSM development in OOFEM, OORBS): Download and install Xcode from Appstore Download and install CLion,If you don’t have Jetbrain account (the devlopers of Clion) create one, if you are…
Keep readingEngaged CPU capacity by OOFEM multi-threading
Even with multi-threading enabled compilation (USE_OPENMP CMake option), mostly a limited CPU capacity is engaged by OOFEM. One reason could be the default Skyline solver and the implemented Crout matrix factorization method. Skyline storage scheme does not eliminate all the zeroes in the matrix and the matrix factorization used in the code is a sequential…
Keep readingUsing GMSH for preprocessing of OOFEM solver
A simple 2D case of modeling using Salome is provided as the official manual of preprocessing models for OOFEM solver. Also, a simple 3D case was formerly provided in this blog. However, the installation of Salome can be cumbersome while GMSH can easily run on Windows, macOS, and Linux machines. Here I first try to…
Keep readingInstalling HomeBrew/OpenMP on MacOS
You have the option to compile the OOFEM with OpenMP in order to enable multithreading option (-t #number_of_threads). In CLion preferences, add a new CMake profile with the corresponding CMake option to enable OpenMP library for multi-threading. For OOFEM you need to add the following CMake option: -DUSE_OPENMP=ON (the default is OFF) If the OpenMP…
Keep readingCompiling and running CLion project on a remote MacOS host machine
As the running an analysis becomes more expensive time-wise, one may find the ability to compile and run a program on a remote machine useful. Happen to be we have a Mac Pro station which we use to run analysis. To me it is only useful if I can easily run my code using the…
Keep reading3D FEM modeling for OOFEM in Salome
OOFEM can use some UNV files to create the “.in” input file for simulation. UNV is a common format for saving FEM meshed models. You can preprocess a model in Salome and export the mesh into UNV format to be later used by OOFEM. UNV file only includes the mesh and the also group of…
Keep readingManually installing Salome on Ubuntu
Extract the downloaded Salome package and move the extracted directory to the location to be set-up. Make sure there is no space on the address of the directory. Install Python sudo apt install python3-pip To avoid psutil related error: sudo pip install –upgrade psutil Install Boost, QT 5, OpenGL, LAPack and other required libraries: sudo…
Keep readingChanging CMake variables in CLion
On rare occasions such as changing the defaults solver of OOFEM, you will need to compile it with different CMake compile settings. That is you have to change some variables in CMake. For example in order to enable DSS solver, you have to change the CMake variable USE_DSS to ON. For this purpose a new…
Keep readingRunning Python scripts of OOFEM inside CLion
OOFEM has some parts written in python (*.py) such as unv2oofem used for preprocessing and extractor used for postprocessing. To run these scripts first make sure you have setup the python interpreter (see here) Next simply open the python script such as /tools/unv2oofem/unv2oofem.py by openning the script and right click on the file tab and…
Keep readingEditing/Rendering OOFEM documentation
You need to install a LaTeX editor to modify and update the OOFEM manual source files. Texmaker is one of the best editors for this purpose. Installing Texmaker and libraries that OOFEM documentation needs to compile. If you are here just to download the manuals I have compiled (April 2021) please scroll to the end…
Keep readingCorrecting timeout values in CLion
If you get timeout error during debugging; this can be due to your host machine hardware limitation. You may workaround this problem by increasing the timeout values for CLion: Go to the Help | Find Action > run “Registry” command Find “cidr.debugger.timeout” “cidr.debugger.timeout.evaluate” “cidr.debugger.timeout.load” Increase values (e.g. 120,000) This may cause you machine to freeze…
Keep readingRemove password prompt to access shared folder inside guest Ubuntu virtual machine
If you are using virtual box, you may need to easily transfer files with the host operating system. This can be done through shared folder in Virtual Box setting. However you may not have permissions inside Ubuntu machine to access this folder, you may get an error or be prompted for password. You can add…
Keep readingRunning oofem “*.in” files from CLion
I always keep the input (*.in) files inside “run_dir” directory inside project directory (they will not be a part of the repository). If you want to do this, you have to change running (working) directory inside run configuration. Open drop-down menu next to the green hammer icon below menu bar. Inside program arguments you can…
Keep readingCLion debug: Skip C++ standard files in GDB debugger
You need to tell GDB debugger to skip standard file by making two .gdbinit files. One is inside the project folder and is a part of oorbs repository. The other one is inside you home directory and will address the other .gdbinit file. More info:https://stackoverflow.com/questions/5676241/tell-gdb-to-skip-standard-files/42985979#42985979https://www.jetbrains.com/help/clion/configuring-debugger-options.html#gdbinit-lldbinit Add .gdbinit file in your home directory (if it didn’t…
Keep readingBuilding OOFEM clone in CLion and configuring Python interpreter
A) Building the project CLion automatically detects CMakeLists.txt and loads the source files, the remaining process is easy: (This is for Linux, For MacOS skip this) First, install Doxygen and Python:sudo apt-get install doxygenFor the next part also install pythonsudo apt install python3-pip Below the menu from the drop-down select “oofem|Debug”. If you don’t see…
Keep readingCloning the Repository using CLion
Before continuing, you may want to make sure that you have the proper compilers installed so that in case you are asked to setup toolchains you can select the desired compiler. Go to the Github website and star the targeted repository:– For original OOFEM: https://github.com/oofem/oofem– For RBSM (OORBS): https://github.com/oorbs/oofem Open CLion Start a new project…
Keep readingInstalling Git
In order to clone the repository using CLion, you need to install Git. Simply open the terminal (ctrl+alt+t) and use these commands to install Git: Update apt: sudo apt-get update sudo apt-get upgrade Install Git:sudo apt-get install git-all You can verify if Git is installed: git version
Keep readingSetting up the development environment: Installing CLion under Ubuntu
For our project, we chose to use CLion as a development IDE under Ubuntu. CLion provides a much more suitable environment compared to other alternatives such as Eclipse and it can be installed both on Windows or Ubuntu machines. Since compiling OOFEM under windows is not continuously supported you have to set up an Ubuntu…
Keep reading