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 legacy version of 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
or
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