This project presents the OxCM contour method solver, structured on the legacy version of the FEniCS open-source computing platform, that provides a standardized way of solution to the linear elastic numerical model for the calculation of residual stresses corresponding to out-of-plane displacements, that appear as a result of the changes in the boundary conditions after non-contact cutting, by a single line command in the availability of a domain composed of tetrahedral mesh and experimentally collected and processed profilometry data. For more information see the citing paper given below and contact with the authors of this paper.
- dolfin
- numpy
- scipy
- click
Dolfin is the computational environment of FEniCS available in the latest stable release of legacy FEniCS that should be installed with its dependencies using the instructions given in this link:
https://fenicsproject.org/download/archive/
The latest version of the OxCM contour method solver was tested by Docker 4.24.1:
https://desktop.docker.com/win/main/amd64/123237/Docker%20Desktop%20Installer.exe
Install the Docker for FEniCS:
docker pull quay.io/fenicsproject/stable:latest
Go to your shared folder and initiate the container:
docker run -ti -v ${pwd}:/home/fenics/shared quay.io/fenicsproject/stable:latest
Note the <container_name> from 'Docker -> Containers' and exit the running container:
exit
Start the container from 'Docker -> Containers' and initiate the same container:
docker exec -it <container_name> /bin/bash
Use the package manager pip to install latest supported versions of numpy, scipy and click:
pip install --upgrade numpy
pip install --upgrade scipy
pip install --upgrade click
Use the package manager pip to install OxCM:
pip install git+https://github.com/fatihxuzun/OxCM.git
OxCM command line interface (CLI) relies on 5 parameters:
-
--degree, an integer value that define degree of function space
-
--young, a float value that define Young's modulus
-
--poisson, a float value that define Poisson's ratio
-
--mesh, a string value that define the mesh file in 'xml' format
-
--data, a string value that define the data file in any plain text file format
Mesh file and data file should be located in the user created project folder:
/myProjectFolder$
Running OxCM command line interface (CLI) using training files:
OxCM --degree 1 --young 200e3 --poisson 0.29 --mesh 'myMesh.xml' --data 'myData.txt'
Outputs of the OxCM are ParaWiev plots of displacement, elastic strain and stress with a log file of CLI parameters:
- Displacement.vtu
- ElasticStrain.vtu
- Stress.vtu
- Parameters.log
The OxCM saves outputs to the results folder located in the project folder:
/myProjectFolder/results$
This solver has been developed as a part of the study that aims to understand the influence of processing conditions and geometric irregularities on the accuracy of the contour method residual stress quantifications. Please cite:
Uzun, F., Korsunsky, A.M. The OxCM contour method solver for residual stress evaluation. Engineering with Computers (2024). https://doi.org/10.1007/s00366-024-01959-3