button

  • button
  • button
  • button
  • button

  • 20250326 - WeldFormFEM Working on MSWIN Advances in Remeshing #2!!!

    #FEM #TETRA #WeldForm #CUDA #GPU

    Mores dvances in mesh adapting refinement using Omega_h!!!
    Mapping of nodal variables is ready.
    Also, now CPU version runs on Windows.
    The first images shows only remeshing (w/o length parameters) if angle is between certain threshold. Now more control of quality is possible.
    Also as in mmg library, we can map a variable to use as mesh size scale.

    Remeshing by angle only Compression
    Remeshing only by angle(left)Remeshing by angle & size (right & bottom)

    Compression Compression

  • 20250314 - WeldFormFEM Advances in Remeshing!!!

    #FEM #TETRA #WeldForm #Hourglassing #CUDA #GPU

    Several advances in mesh adapting refinement using Omega_h!!! Using element angles and element length to refine!!! Maybe will be also incorporated mmg to compare! At left are the original mesh with its plastic strain and at right are the new meshes with their the metrics. Next: to map to new mesh and continue process!

    Compression Compression

  • 20250311 - WeldFormFEM: GPU giving same results, and Adding Remeshing!!!

    #FEM #HEXA #WeldForm #Hourglassing #CUDA #GPU

    So, for 1 elements, several steps are giving ok for GPU solver, so it remains to check why there are occurring some crashes in GPU.
    Begining to Add Adaptive Remeshing for GPU and CPU with omega_h library!!!
    I really like Omega_h new coding style approach.
    Mesh is succesfully built from current nodes and connectivities.
    So, the thing is now to choose between Refine and Adapt Methods, I will begin with adapt in order to study element quality.

    Compression Compression

  • 20250218 - WeldFormFEM: CUDA Derivatives calc fixed!!

    #FEM #HEXA #WeldForm #Hourglassing #CUDA #GPU

    Writing fixes continues! Matrices calcDerivatives allocation was wrongly defined.
    Problem was that in CUDA all Matrix ops and objects are defined in device but was using cudaMalloc & cudaFree functions, which are intender for using from host
    Now is remaining to check that values are not consistent, but mem alloc were solved.
    Next action will be to replace global calls entirely using omega_h library style function.

    Compression Compression

  • 20250214 - WeldFormFEM: 3D HEXA Reduced Integration w/hourglass working!!

    #FEM #HEXA #WeldForm #Hourglassing

    After alot of fixes, finally hourglass is working with hexas! Approach used is from Goudreau 1982, "Recent Dev. in Large Scale FEM Lag. Hydrocode Tech".
    On the other hand I have found that tetras require a CFL of about 0.05, but for the initial compression problem.
    WeldFormFEM Link .

    Compression Compression

  • 20250212 - WeldFormFEM Frictional Contact!

    #FEM #TETRA #WeldForm #Locking

    After several fixes, including generalized alpha method correction, frictional contact is ready!!
    Here is a compression example. On the other hand, there is some differences with hexa example It seems that for an uniform nodal mass distribution (F90 version), beam bending example gives results, but when mass is not uniform, there is not convergence. I think it will be necesary some ramp velocity on the node. will try to run the bending example with C++ version and th 8 element benchmark.
    WeldFormFEM Link .

    Compression Compression Compression

  • 20250117 - WeldFormFEM Contact!

    #FEM #TETRA #WeldForm #Locking

    Frictionless contact is ready!!
    Here is a very low speed Taylor impact bar example. Still need to finish friction.
    WeldFormFEM Link .

    Compression Vol. Locking

  • 20250117 - WeldFormFEM Tetras, Volumetric Locking Corrected!!!

    #FEM #TETRA #WeldForm #Locking

    News about WeldFormFEM: Now constant Stress Tetra can be used in nearly incompressible behavior(such elastoplastic compression, forging).
    I have implemented Average Nodal Pressure proposed by Bonet 1998 (and revisited by Joldes in "Non-locking tetrahedral finite element for surgical simulation").
    WeldFormFEM Link .

    Compression Vol. Locking Compression Average Nodal Pressure!!

    Compression Locking Compression ANP!!

  • 20250116 - WeldFormFEM Tetras!!

    #FEM #TETRA #HEXA #WeldForm #Hourglass #Locking

    Hi!!! News about WeldFormFEM CPU/GPU code:
    - Thermal coupled is being written!!
    - Adding remeshing "skeleton"..
    - Adding volumetric locking treatement
    I have found an excelent LS-Dyna Element behavior. Such Benson 1992 states, Constant Stress Tetra/Triangle (CST) behaves overly stiff, but he do not propose a solution.
    HOWEVER, comercial FEM Forming tools like DEFORM, FORGE & qFORM (Simufact works with FVM in 3D), works with tetras. However Locking Locking behavior in CST or HEXA elements typically arises in specific contexts, such as incompressible or nearly incompressible material behavior, bending-dominated problems, or mesh refinement with ill-conditioned elements. This can be volumetric locking of shear locking. Bonet (who also has done and still doing an extensive work with SPH), propose to implement an average pressure to overcome locking.
    Hourglass models (or Zero energy modes) only affects hexas, and are observed in reduced integration elements (1 gauss point), and are deformation states in which central element gauss point presents null value but nodes don't.
    Regarding to Hexa locking, I will delay a little bit the coding (see 20241122 entry) since I thinnk Tetra is straightforward.

    WeldFormFEM Link .

    Compression Compression Compression Compression Compression Compression

  • 20250107 - WeldFormFEM NEWS!! Again!!

    #FEM #FVM #GPU

    Hello! WeldFormFEM now solves plasticity and reads LS-Dyna keyword files!! Is ready for basic remeshing using mmg
    WeldFormFEM Link .
    I'm now fixing some contact things, & adding remeshing capabilities to WeldForm FEM

    Compression Compression Compression

  • 20241227 - WeldFormFEM CPU/GPU NEWS!!

    #FEM #FVM #SPH #GPU

    Hello! WeldFormFEM is growing!! Now It accepts tetra elements in order to do some basic remeshing using mmg
    WeldFormFEM Link .
    Such as I did with ReDynELA (link here ), I'm adding remeshing capabilities to WeldForm FEM
    The differencies are the following:
    - WeldFormFEM is being written with an SOA (Structures of arrays), which seems to be more effective on GPU, whereas reDynELA works with standard OOP.
    - WeldFormFEM works with reduced integration hexas (faster than 8 gauss point) and now with tetras.
    - WeldFormFEM treats contact surfaces as rigid y now and they are not remeshed.

    Compression Compression

  • 20241209 - Tri(Tet) -> Quad (Hex) Remeshing Conversion Tools #2

    #AMR #Meshing I've made a simple code to convert a mesh from tria to quad but not by splitting quads, but instead trying to combine them to trias.
    Here is the repo:
    https://github.com/luchete80/tri2quad
  • 20241203 - Tri(Tet) -> Quad (Hex) Remeshing Conversion Tools

    #AMR #Meshing

    Yesterday I've playing around & learning with tethex library, which converts tetra(tri in 2D) to hexa (quad in 2D).
    I really like this tiny library, It does not recombine tris to quad like in gmsh, but instead it partitions the tris into quads.
    This way is always only quads (hexas) in your new mesh.
    I'm making a generic converter constructor to work from a list of tris and vertices, since it reads only gmsh files.
    Differents libraries which does same things (but only in 2D) are (I've put stars, watchers and forks count):

    TQMesh
    61 5 16. Active

    tri-quad-mesh-converter
    19 2 9. Qt4 y vtk

    Q-Morph
    14 2 4

    Compression

  • 20241126 - Metal Forming Tools

    #FEM #FVM #SPH #GPU

    So,these are some tools I'm using.
    Theonly one native is OpenRadioss.
    WeldForm CPU and GPU are being dev by me @INTI.
    GPU version is almost ready, needs to test coupled mech-thermal things and to test (already coded) more than one contact surface (could be used the same as continous).
    Solids4foam requires remeshing capabilities .
    ReDynELA isbeing modified with remeshing via mmg lib.
    The calc time upper right is only a guess!! It really depends on several factors.

    Compression

  • 20241121 - GUI Radios FEM Exporter via Python

    #GUI #Python #OpenRadioss

    I began a Python script for export FEM model to OpenRadioss. This allowed me to improve a lot of things concerning to FEM Model methods and its wrapping.
    So, mesh is ready. Now it comes all the rest: Material, BCs, Properties, Nodegroups, Sets, interfaces!

    Compression

  • 20241119 - FEM Remeshing almost done!! !!!!

    #C++ #AMR #Remesh #DynELA

    Mapping from old to new mesh is done! All is performed via source (old) mesh shape functions.
    So the procerure is:
    - Perform new (target) mesh (mmg library)
    - For every new target node
    - Check if is inside element (if all internal coordinates are positive)
    - Field Mapping
    Youtube Video here

    Compression

  • 20241114 - GUI working on Linux & MSWIN !!!!

    #C++ #MSVC #Singleton #architecture #GUI

    Excellent news!!! Finally, after a "LITTLE" lot of struggling, WeldFormGUI is working on both systems.

    All were running ok in Ubuntu, but to make it work in Windows, I had to add external symbols, and TO CHANGE SINGLETON GET INSTANCE IMPLEMENTATION TO C++ file INTSTEAD OF INLINE. (Some may need this info).So, now is slso possible to generate quad elements from nodes with python.
    I think is also needed:
    - Output on console
    - Console editor (check godot scripting console)
    - Colors
    - Radioss exporter both on python and C++

    Compression

  • 20241111 - Remeshing Solver !!!!

    #WeldForm #FEM #AMR #meshing

    First steps with Adaptive Mesh Refinement (AMR). After struggling a lot with Kratos contact structural mechanics module, and noticing It's actually broken, I decided to adapt myself an existing thermally coupled solver with mmg library, used by kratos, and add to it adaptive remeshing.

    First I change some things to ReDynELA solver and now Im doing my first remeshing tryings with plastic strain metric. Some results below!

    Compression

  • 20241022 - WeldForm FEM/SPH GUI -Python Scripting!!!!

    #WeldForm #GUI #VTK #gmsh #meshing

    Wonderful news!!! Python scripting is working!!! Both wrapping and python console are working. Based on FreeCAD, I chose to use a Singleton class named App to contain a current model pointer. By doing this I avoided tedious treatment between SWIG global vars which I'been struggling

    Compression

  • 20241016 - WeldForm FEM/SPH GUI

    #WeldForm #GUI #VTK #gmsh #meshing

    Ok, has been so much time. WeldForm Graphical User Interface (GUI) has been under a lot of changes!!! - GMSH library finally was added in order to import geometry and to mesh it. - VTK library has been added, replacing the old rendering. - ImGui-vtk viewer to combine both GUI and mesh/geom rendering was adopted. - Both SWIG and Pybind11 have been adopted. - The idea is to incorporate python scripting to generate and see models. - How do you perform that avoiding wrapping the renderer and the GUI?

    Compression

    Some of the latest changes:

    Compression

  • 20240729 - WeldForm FEM/SPH GUI

    #WeldForm #GUI

    WeldForm Graphical User Interface is becoming nice! Today I have been working on the GUI. It allows to open/create/edit/urun/postprocess SPH ND FEM models easily..
    - Now model and results (scene) is drawn inside a separate Windows.
    - Particle and entity selection is fixed.
    - Added json library and begining to add model reading/writing.
    - Added open cascade gmsh interface source fir reading geometry.
    - Added Bc creation.
    - Working on separate ViewportWindows class, almost finished.

  • 20240724 - WeldForm FEM C++/CUDA (almost)- Working

    #WeldForm #FEM

    WeldForm FEM C++ CPU 3D HEXA element solver is working great! Two things: - CUDA/C++ version is working with correct results but at some point process stops, once this is solved, GPU will be working.
    - I think is a good moment to compare C++/Fortran CPU versions.

    Compression

    20240723 - WeldForm SPH - Bar Extrusion

    #WeldForm #SPH

    Comparison between commercial software (Arbitrarian Eulerian Lagrangian FEM) vs WeldForm SPH. Bronze user defined material, axisymmetric problem!

    Compression Compression

  • 20240722 - WeldForm SPH - Comparison Between Artificial Viscosity parameters

    #WeldForm #SPH

    This is a comparison of a hot temp (700C) extrusion process solved with WeldForm SPH method. It is interesting to see that for a larger alpha parameter (right), metal flow seems more stable. I will add soon another parameter combinations.

    Compression

  • 20240703 - WeldForm FEM - AxiSymmetric Solver Ready!!

    #WeldForm #FEM

    WeldFormFEM, Lagrangian solver is working (F90 version) for AxiSymmetric problems!! This approach covers area-weighted, reduced integration elements.

    Compression

  • 20240619 - WeldForm SPH - Leapfrog vs Verlet

    #WeldForm #SPH #Forming

    It seems that a constant step size performs a lot better than a variable one!
    In green can be seen Fraser algorithm against Randles & Libersky.
    Contact force is smoother and run is a lot more stable.
    d .

    Cube Mesh 1 Cube Mesh 1

  • 20240618 - WeldForm SPH

    #WeldForm #SPH #Forming

    Testing with a new extrusion process of an axsymmetric bronze bar!

    Cube Mesh 1 Cube Mesh 1

  • 20240614 - WeldForm GPU

    #WeldForm #GPU #CUDA

    WeldForm FEM GPU Version is calculating ok sigma!

    Cube Mesh 1

  • 20240613 - WeldForm SPH

    #WeldForm #SPH #GTN #Forming

    I've been stdying WeldForm SPH results against commercial metal forming software.
    Extrusion process of a bronze workpiece. GTN Material (see below) has been added
    to WeldForm software,and the results after 145ms are shown.
    It can be seen some particle separations, this is probably due to the following:
    - There are very few particles on tube thickess (outlet)
    - There is no kernel correction for momentum eqn at boundaries
    - There is not ambient convection cooling at outlet
    - There is a fixed time step
    - h (SPH Characteristic length) is constant.

    Cube Mesh 1

  • 20240607 - Tinyest FEM Project - Python Educational Module

    #Top10 #FEM

    TinyestFEM is a tiny explicit educational FEM module which I intend to give
    book format. Check it out! ( TinyestFEM ) and

    Cube Mesh 1

  • 20240607 - Top 10 OpenSource FEM Projects!

    #Top10 #FEM

    Today I began to make a video with the Top 10 FEM open source projects.
    Even having known some of them, I found very interesting the thing that I have so many out there to test!!
    Is also interesting the criteria. Usability, contributors, users, versions, history, scope?
    Who is gonna win??
    Among other things, Ive added plastic strain calculation F90 mechanical solver.
    Next thing is to add Eulerian Lagrangian behavior to resove high strains problems!

    Cube Mesh 1 Cube Mesh 1

  • 20240607 - WeldForm SPH GPU! - Speed Up

    #SPH #GPU #WeldForm #Performance

    Amazing news!! I got a NVIDIA RTX 3070 GPU just for fun! So..
    Together with a GTX1660Ti which I have at work, I made some tests. I'm amazed about the speed up i get against an Intel i7 10700 with 16 threads.
    How is gonna be at 300k and 500k particles?????

    Cube Mesh 1

  • 20240606 - WeldForm SPH - Thermal Axisymm is working

    #SPH #FEM #SPH #OpendGL

    Finally thermal conduction SPH is working !!!!
    There was also an error on applying manual mass scaling, on which the conductivity coefficient was erroneously affected. Also FEM

    Image shows a FEM cube mesh.

    Cube Mesh 1 Cube Mesh 1

  • 20240530 - WeldForm Thermal - Input & 2D

    #SPH #WeldForm

    Convection is fixed for plain strain, whereas for axisymmetric conduction and convection is being studied.
    Now Temperature and Convection can be readed from JSON input file!

    Image shows a FEM cube mesh.

    Cube Mesh 1

  • 20240603 - WeldForm SPH - Thermal Conduction

    #SPH #Thermal #Axisymmetric

    I included reading convection from input to WeldForm SPH solver. Now I must to modify thermal conduction equation. There are several works reeferring to this. Since Brookshaw developed SPH on axisymm coordinates, different works like ( García-Senz et Al ) and ( Castillo et al.) have developed the conduction equation. Original 3D current eqn is the following:

    ASDIF 1, where
    ASDIF 1

    So, we want to solve energy eqn:
    ASDIF 1
    Now shuld be changed: according to D. García-Senz

    ASDIF 1

    and, according to Castillo:

    ASDIF 1

    ASDIF 1

  • 20240530 - WeldForm GUI - Mesh creation

    #GUI #FEM #SPH #OpenGL

    The wrk with the renderer is just begining. Now, not only SPH but also 2D and 3D FEM domains can be created from GUI. The idea is to add the great gmsh library in order to only create the geometry outside, and all the rest can be performed by the GUI: meshing, model creation (BCs, steps), running and post-processing.

    Image shows a FEM cube mesh.

    Cube Mesh 1

  • 20240529 - First Examples of Extrusion process made with WeldForm

    #FEM #WeldForm #SPH

    First models have been succesful!! I have to study several things, like some
    strange behavior of the particles and the axial force.

    Image shows a bronze extrusion process.

    ASDIF 1 ASDIF 1

  • 20240528 - WeldForm FEM & SPH advances

    #FEM #WeldForm #SPH

    Today was an enhancements day. I have fixed / added several things on both FEM & SPH versions of WeldForm solvers.
    In case of SPH solver, I have modified several thing in order to consider only contact conduction heat, and deprecating plastic heat and friction heat by the moment.

    20240527 - Added state of contact conduction at the begin of the solution.
    20240528 - Added feature of assign initial diff conditions for different Zone IDs
    - Fixed contact BC with amplitude function (there was readng zero value)
    - Added amplitude factor to be 1.0 by default (it was zero)
    - Fixed contact conduction and friction heat for Axisymmetric
    - Added optional plastic work heat
    - Fixed contact conduction reading


    In case of FEM solver, I'm currently adjusting the code fixing some errors before passing to GPU version which have a couple of bugs.
    The intention is to compare the performnce on both CPU and GPU version, since the code is in fact the same, with modification through pre-processor instructions.

  • 20240527 - WeldForm SPH Capacities

    #SPH #WeldForm

    Thermal plastic heat generation is working OK! Example of Cylinder under compression.
    There are still some issues regarding with contact thermal conduction which have to be fixed.
    WeldForm accepts several contact surfaces, so here is an example of an extrusion problem.

    ASDIF 1 ASDIF 1 ASDIF 1

  • 20240524 - WeldForm GUI , again.

    #FEM #WeldForm #OpenGL #GUI

    Again the built it renderer is being constructed. Fixed several index things (including some redundant reading from my library LSDynaReader) and now can be shown 2D and 3D elements, created or imported from K files. Lines are not redundant, since are checked with C++ sets. I'll do the same with faces in onder to plot only external faces and edges. Run a FEM/SPH model and show the results is coming...

    ASDIF 1

  • 20240523 - WeldForm GUI

    #FEM #WeldForm #OpenGL #GUI

    WeldFormGUI now imports LS-Dyna files and displays them .. uhm, almost.
    Love to code the native opengl renderer, pending since so much time ago. I'm reading about several known renderers, like Super Tux Kart and Bullet3 physics engine, and asking myself about how much verte buffer to use, is it convenient to use one for triangles and another one for wireframe? Considering rendering time and cost of binding.

    ASDIF 1

  • 20240522 - OpenRadioss - DSIF

    #FEM #Explicit #OpenRadioss #Forming #DSIF

    Now the radioss script allowa to make different radius and shapes for DSIF.
    Now will be available the ASDIF variant from inside to outside. Check on here: OpenRadioss Tutorial

    ASDIF 1 ASDIF 2

  • 20240521 - OpenRadioss - Thermal Incremental Forming

    #FEM #Explicit #OpenRadioss #Forming #DSIF

    I'm facing the problem of not being able to intriduce thermal flux on OpenRadioss Shell problem. Trying to run a double sided incremental forming with assisted heat by joule effect, i'm discovering that even if the /IMPFLUX keyword are not giving me a warning, is only intended for 3D elements.
    Because of this, I will run a only thermal 3D example (the overall 3D model would cost a lot of CPU), and then I will map the temperatures in order to put these on the thermo-mechanical model as inputs (at least), those which are on the tool zone. By the way, I have improved the openradioss generation script in order to include several path shapes.
    Check on here: OpenRadioss Tutorial

  • 20240520 - WeldForm FEM Working on C++

    #WeldForm #FEM

    After several checks and errors found, finally, FEM explicit c++ CPU/GPU solver is working for 3d correctly. Is pending to check for Assemblying things. WeldForm FEM is an explicit reduced integration FEM solver in order to solve large deformations quickly. The idea is to study performance of Lagrangian solver CPU vs GPU. On the other side, to this code will be added an eulerian part (via operator split such as abaqus, and radioss) in order to study very large displacments and strains problems. The code architecture is structured such as could be built for CPU / GPU only changing preprocessing. Input could be given as LS-Dyna Format. 2D Is still pending (previous F90 version covers this.)

    WeldForm FEM

  • 20240514 - AXISYMM Frictional Contact is working

    #WeldForm #SPH #AxiSymmetric #Contact #Material

    Recent WeldForm Changes. Added GMT material!
    20240513 - Added reading than one contact surfaces
    - Changing normal calcs of planes
    20240514 - Added GMT material to inpt
    - Begining to add hot compression example with GMT mat
    - Corrected yield stress calc with correct Initial Temp

  • 20240510 - AXISYMM SPH Contact with Friction is FIXED : ALSO FOR 3D

    #WeldForm #SPH #Axisymmety

    Contact (Wang and Fraser solvers and contact algorithms) is FIXED, was not working. So version 0.4.2.4 was re-tagged.
    Now is correcly for both 2D and 3D.

    GMT Eqn

  • 20240507 - AXISYMM SPH Working AND NairnMPM is running (almost)!!

    #WeldForm #SPH #FEM #MPM #GMT #Forge

    Ok, GMT material model is introduced to WeldForm SPH code, this material is used to solve hot forging processes.
    The idea is to introduce it also in NairnMPM code in order to see some results.
    Some benchmarks are working with Johnson Cook material with MPM.
    The idea is to compare them with SPH formulation.

    GMT Eqn Curves MPM results with Johnson Cook

  • 20240507 - AXISYMM SPH Working AND NairnMPM is running (almost)!!

    #WeldForm #SPH #Axisymmetry #FEM #MPM

    Three different projects are working:
    - WeldForm SPH 2D AXISYMM IS WORKING!!! Finally, Wang formulation is working, also is fixed contact, but still pending thermal coupling
    - NairnMPM is finally built with cmake (avoiding VS and working on linux)
    - TinyestFEM project working on python (1 element FEM axisymmetric). This is intended to be part a tutorial series which will be detailing how FEM Eulerian - Lagrangian (ALE) works.

    - Also, a Graphical user interface for both SPH and FEM is being projecting..

  • 20240426 - AXISYMM SPH Almost Working..!

    #WeldForm #SPH #Axisymmetry

    I fixed several issues with 2D Axisymm code. Pressure (EOS equation) and Speed Sound were calculated using fake density, (since following J Wang, D Chan and J Zhang, 2015, equations are based on density affected by radius ), one term of acceleration was wrongly calculated and still missing artifficial viscosity. Seems to be almost working!

    Italian Trulli

  • 20240426 - AXISYMM SPH!

    #WeldForm #SPH #Axisymmetry

    Still Trying with 2D Axisymmetric SPH on WeldForm. I'm following "Stable axisymmetric SPH formulation with no axis singularity" (J Wang, D Chan and J Zhang, 2015). I've found several errors. Steps for plane strain to Axisymm are:
    0-As in plane strain, I define r->x, z->y,but now is theta->z 1-Change density to axisymm density
    2-Replace momentum vars per new eqns (and ar has a hoop stress term added)
    3-Calculate Hoop Strain rate as vr/r
    4-What about strain and rot rates?

    Italian Trulli

  • 20240425 - DSIF Double Sided Incremental Forming

    #FEM #Explicit #OpenRadioss #Forming #DSIF

    Fixed XY PLANE SYMM on WeldForm!!!!! Not working yet axisymm slice.

    Italian Trulli

  • 20240424 - Kratos Multiphysics, HOWTO run PFEM Module

    #FEM #PFEM #Kratos #Tutorial

    Finally, several steps concerning to usigng Kratos

    1. Execute ./standard configure
    Adding
    export KRATOS_APPLICATIONS=
    add_app ${KRATOS_APP_DIR}/LinearSolversApplication
    add_app ${KRATOS_APP_DIR}/StructuralMechanicsApplication
    add_app ${KRATOS_APP_DIR}/FluidDynamicsApplication
    add_app ${KRATOS_APP_DIR}/PfemApplication
    add_app ${KRATOS_APP_DIR}/PfemSolidMechanicsApplication
    add_app ${KRATOS_APP_DIR}/PFEM2Application
    add_app ${KRATOS_APP_DIR}/MPMApplication

    And

    # Configure
    cmake -H"${KRATOS_SOURCE}" -B"${KRATOS_BUILD}/${KRATOS_BUILD_TYPE}" \
    -DUSE_MPI=OFF \
    -DUSE_TRIANGLE_NONFREE_TPL=ON \
    -DUSE_EIGEN_MKL=OFF \
    -DKRATOS_GENERATE_PYTHON_STUBS=ON

    2. make install . This create bin folder inside kratos (which is being ommited in git). Inside bin, is Release folder in which is "KratosMultiphysics"

    3. This is in order to read scripts
    export PYTHONPATH=/home/weldform-pc/Numerico/Kratos/bin/Release

    4. Replace inside MainPfem.py:
    #import MainSolid
    with
    import KratosMultiphysics.SolidMechanicsApplication.solid_analysis as MainSolid

    5 Inside TestFactory.py replace
    import KratosMultiphysics.PfemApplication.MainPfem
    with
    import KratosMultiphysics.PfemApplication.MainPfem as MainPfem

    6. Inside solid_analysis.py replace
    #self.t0p = timer.clock()
    self.t0p = timer.process_time()


    7. Change in DelaunayMeshingApplication/remesh_domains_process.py No module named 'meshing_domain'. This file can be put inside test directory to be solved quickly. Most clean solution could be update PYTHONPATH

    8. Important how to convert mesh to MDPA https://github.com/KratosMultiphysics/Kratos/wiki/Converting-Gmsh-mesh-format-to-MDPA

    Still some errors
    Italian Trulli

  • 20240423 - Kratos, PFEM Module

    Today I built (once again and counting) Kratos Multiphysics in order to use PFEM module (also has MPM, PFEM2, among others). Is interesting to make (I will) a simple tutorial, since several things have to be changed, among them are the main python script of the module which is a little bit old since it imports the libraries in the old fashion.

  • 20240422 - Advances in general, AXISYMMETRY

    #FEM #Explicit #SPH #WeldForm #Axisymmetry

    I'm trying to revival Symmetry on SPH. It's needed since I want to solve an extrusion problem. I like a paper written by Campos and Bonet in which they adopt axisymmetry with ghosts. I think it's kind of working on 1/4 of cylinder, but I'd like to implement less volume like Bonet.

    Regarding to another fronts: Regarding to some other topics:
    - Today I uploaded the first springback on OpenRadioss
    - Also advanced on Axisymm FEM - Very stuck with Kratos PFEM

    Italian Trulli

  • 20240325 - WeldFormFEM GPU Advances

    #FEM #Explicit #WeldForm #GPU

    Last weekend commits: almost everything (except contact and hourglassing, oh and full integration not tested) is migrated to GPU / CPU in C++. Some errors in pressure and stress calcs but almost ready. I think could be convenient some Trello/jupyter nb or something like that to trace pendings. I noted the following about commit counting for each main branches:
    Master: 361. Develop -> 463 ...
    More than 100 commits ahead, WOW.

    I'm pretty anxious about trying GPU performance of explicit FEM on GeFORCE 1660 Ti.

    Some advances on DEVLOG:

    Date Details
    20240302 - Added velocity and accel corrections. - Added mass matrices
    20240308 - Fixed Vol Calc (Gasuss weight) - Added mass matrices - Fixed nodal pos calculations in predictions
    20240312 - Fixed Vector to Ptr allocation
    20240315 - Fixed getVel fnc. Now strains are calculated ok.
    - Corrected velocity components calculation of strani rate
    - Corrected getDerivative function (several indices and offsets were wrong).
    - Added velocity corrections
    20240315 - Added Shape matrix calculation (for element masses and lumped matrix)
    20240320 - Corrected mass matrix dimension
    - Added AssemblyForces device call from Kernel.
    - Added mass matrix calculation (parallel and CPU)
    20240321 - FIXED assembly (Two allocations were missed). - Changed Initial Density - Added first stress calc
    Keep on going..

  • 20240302 - More Finite Volume Methods on Solid Mechanics

    #FEM #FVM #Explicit #OpenFOAM #Forging #Forming

    Ok, I did a very brief research, looking for similar works like the Haider's I mentioned in last entry. I'm wandering what I will find, if total or updated lagrangian, explicit or explicit in time, weakly compressible, among others. Will see. By now, it put them here in order to not lose them. I think I will begin a list with the works I will be finding.

    Author Year Title
    Fallah 2000 Computational Stress Analysis Using Finite Volume Methods
    Bijelonja, Demirdzic, Muzaferija 2005 A FVM for large strain analysis of incompr. hyperel. materials
    Tukovic, Jasak 2007 Updated Lag. FV solver for large def. dyn. response of elastic body
    Barton, Drikakis, Romenski 2010 An Eulerian FV scheme for large elastoplastic deformations in solids
    Haider 2018 An upw. CC-FVM for large strain exp. solid dyn. in OpenFOAM
  • 20240220 - Hot Forging Methods

    #FEM #FVM #Explicit #OpenFOAM #Forging #Forming

    It's been a while, again. Few days ago I was doing a little research about common methods for modeling hot forging in metals. My interest is to emulate some results of Aluminium hot forging process, at high speed, which have been obtained with Simufact software. This process involves excessive large plastic strains and Simufact appeals to high remeshing to overcome this. This commercial software has a manual which describes that the method used for the simulation was the Finite Volume Method, but with a Lagrangian approach. By now, I will try to solve this process by several methods: Explicit FEM (OpenRadioss, eventually with ALE), Smoothed Particle Hydrodynamics (Radioss, and WeldFormGPU), but I became to wander how about solving this also with FVM.

    Some years ago, I written a little FVM code for solving Transpor Eqns (particularly applied to Navier Stokes) with an OpenFOAM style ( FluxSol link ). Recently, after some time googling around, I came across the following great work: "An upwind cell centered Finite Volume Method for large strain explicit solid dynamics in OpenFOAM"(link here ). This PhD thesis consists of building some OpenFOAM mixed solver by combining its standard Transport solvers, linking with Solid equations, associating constituive and near incompressible relationships (don't know yet which ones) and then moving the mesh (is a Lagrangian approach, but also could be built a Eulerian one, perhaps being diffusive, but like in Abaqus with FEM). I discover also that among the authors is present J. Bonet, who wrote exceptionals works regarding with SPH formulations. All great news.

    Once this FVM thing works with CPU, who knows if, with me knowing a little bit the method already from FluxSol, could this be rewritten on GPU to increase speed.... I will give it a try. Will see!

  • 20231230 - DSIF Double Sided Incremental Forming

    #FEM #Explicit #OpenRadioss #Forming #DSIF

    It's been so many time since last entry. So many things this month. I'm finishing a python script which generates from scratch the complete input file used by OpenRadioss to calculate the process of Double Sided Incremental Forming (DSIF). The script asks you the complete set of process parameters, plate and tool dimensions, and (not yet) mechanical and materials props. I think this is a very convenient script since there are not so many examples regarding coupled mech-thermal in OpenRadioss.

    Script source code is here . And here is the mesher and input generator. Both files are nedded.

    Italian Trulli

  • 20231122 - HOURGLASS! and Reduced Integration

    #FEM #Explicit #Algorithm #Eulerian #Hourglass #ABAQUS #OpenRadioss #ALE

    Making some recopilation about hourglass modes. These are the modes which arises fromreduced integration in order to improve efficiency. I'm trying to implement it on WeldFormFEM which works on full integration, but up until now solution is diverging. First paper about it which I readed was Benson. Later, I readed Goudreau works, which I wrote for WeldForm. Goudreau algorithm claims that this algorithm needs about 130 computer adds or multiples per hexa, whereas Flanagan-Belytschko algorithm needs about 630. The exact same table is in LS-DYNA manual here https://ftp.lstc.com/anonymous/outgoing/web/ls-dyna_manuals/DRAFT/DRAFT_Theory.pdf OpenRadioss has incorporated several hourglass controls: Kosloff and Frasier (simple), Flanagan-Belytschko, Physical Hourglass Formulation and Advanced Elasto-plastic. Links on hexa and here on shells On the other hand, ABAQUS uses kelvin viscoelastic control, here .

    Author Year Title
    Kosloff, Frazier 1978 Treatment of hourglass patterns in low order finite element codes
    Flanagan, Belytscho 1981 A unif. strain hexa and quad and ortho hourglass control
    Goudreau 1982 Recent Dev. in Large Scale FEM Lag. Hydrocode Tech
    Benson 1992 "Computational methods in Lagrangian and Eulerian hydrocodes"

  • 20231108 -

    #FEM #FORTRAN #Explicit #Coding #WeldForm #C++

    Ok, move to stress decomposing for calculating plain strain solid (still with full integration). Up until now 2D plain strain calculation was via elastic tensor, now is decomposed in order to work with plasticity. And what about plain stress?? Also begining to code C++ version, I still don't know if use Array Of Structures ofr Struct Of arrays on CPU version..

    button
  • 20231031 - SPH Damage

    #SPH #Failure #Damage #OSS #List #LAMMPS #WeldForm #Charpy #Cutting #GTN #Refs #JohnsonCook

    Ok. Surfing a Pseudo Spring model to add to WeldForm, I reached a work which uses LAMMPS software, which I didn't even know, from Sandia. The idea is to include Damage model and several (begining with Rankine as example and then JohnsonCook) failure criteria. Although Vaucorbeil and Hutchinson work is developed on a Total Lagrangian, and WeldForm is written in classic Eulerian form, the work shows the application of the pseudospring damage criteria to Johnson Cook, GTN and Cockroft-Latham damage models. Besides pseudo spring model, the other currently available damage and fracture implementation for SPH is the particle cracking method (last work and 2007 and 2010 following works of Rabczuk, T. Belytschko). According to Vaucorbeil: "Contrary to the pseudo-spring method, damage is calculated at the center of particles. When damage reaches a critical limit, the particle is split into two. In this case, damage is not localized as its value corresponds to an average over each particle’s corresponding volume. Therefore, the precise location of cracks is not defined and the way particles need to be split is non-trivial". For that reason, I kept with pseudo spring for the implementation on Weldform.

    Author Year Title Solver
    2013 S. Chakraborty, A. Shaw A pseudo-spring based fracture model for SPH simulation of impact dynamics Own
    2019 A. de Vaucorbeil, C. R. Hutchinson A damage and failure implementation for the simulation of ductile solids with Total-Lagrangian Smooth Particle Hydrodynamics LAMMPS
    2019 M.R.I. Islam, C. Peng A Total Lagrangian SPH Method for Modelling Damage and Failure in Solids Own
    2004 Rabczuk, T. Belytschko, Cracking particles: a simplified meshfree method for arbitrary evolving cracks Own
  • 20231030 - Orthogonal Metal Cut / Drilling Simulation Papers

    #FEM #SPH #Cutting #Drilling #List #Refs

    Trying to clean up a little bit some of the best papers about simulation of orthogonal metal cut processes..

    Author Year Title Open Meth Mat Solver
    Arrazola, Ozel 2010 Investig. on the effects of fric. mod in FEM sim of mach. Yes FEM/ALE 4340 ABAQUS
    Bergs Determ. of JC mat. mod. params for AISI 1045 from ortd cut tests... Yes FEM (CEL) - ABAQUS
    Laaksoa, Akmel 2018 The mystery of missing feed force the eff of fric models, ... No FEM 304 DEFORM
    Tajdari 2016 Modeling of brittle and ductile material drilling using SPH No FEM/SPH 2024 ABAQUS
    Rodriguez, Larsson 2021 Imp. or exp. time int. schemes in tde PFEM mod of met cut. proc. Yes PFEM 4340 Kratos
    Boldyrev,Topolov 2020 Twist drilling SPH simulation for tdrust force and torque pred Yes SPH
    Madaj, Píska 2013 On the SPH Orthogonal Cutting Simulation of A2024-T351 Alloy Yes FEM/SPH 2024 LS-DYNA
    Villumsen 2008 Simulation of Metal Cutting using SPH No SPH 6082
    Prieto, Jonsén, Svoboda 2016 Simulation of metal cutting using the PFEM and a physically based plasticity model Yes PFEM 316L Own
    Limido 2006 High speed machining modelling: SPH method capabilities Yes SPH 6061 LS-DYNA
    Heistein, Segalman 1997 Simulation of orthogonal cutting with smooth particle hydrodynamics Yes SPH
    Ojal, Cherukuri 2020 A comparison of PSH & coupled SPH-FEM meth. for model machining Yes SPH/FEM
    Sridhar, Prieto, Payrebrne 2020 Discretization appr. to model orth.cut. with Lag, ALE, PFEM and SPH forms No SPH/ALE/PFEM
  • 20231030 - More tensile things

    #FEM #Tensile #Test #Law #GTN #List #Refs

    Regarding with material models, necking and others, I have been recollecting some papers about tensile test necking which are really good. I will add them to the links section.

    Title Year Authors Mat Law OBS
    Analysis of the cup-cone fracture in a round tensile bar 1983 TVERGAARD, Neddleman GTN Void nucleation and growth
    Influence of Initial Porosity on Strength Prop of S235JR Steel at LowStress Triax. 2012 Kossakowski GTN
    Exp. and num. investigations on failures due to plasticity in thin walled structures. 2018 Jamil, Khan, Ali Ramber-Osgood
    Surface roughness characterization for fatigue life predictions using FEA 2008 As, Skallerud, Tveiten

  • 20231025 WeldFormSPH - C++ CUDA Virtual Functions

    #CUDA #C++ #Coding #WeldForm

    After struggling a lot with virtual functions in CUDA, i just decided to kept a single class for materials in which I call a device function, with a material as an argument to call all hardening rules (calc yield stress and calc tangent modulus) from there. Another problem with inherited class is the memcpy, so, I'm tired oh inheriting on CUDA so Is all inside material class by now. Also began to write the file input reading code (contact and materials). Still remain NASTRAN reading for rigid bodies.


  • 20231024 Tensile test - Necking and notch influence

    #Tensile #Test #Ansys #FEM #Implicit

    Today I have been working with the influence of a notch in the response of a tensile test probe. This work includes the study of the necking in pre failure specimens. I have done both an explicit and implicit analysis. The results shown correspond to static implicit analysis, in 3D. Italian Trulli Italian Trulli Italian Trulli


  • 20230829 C++ vs. Fortran Round 1

    #FORTRAN #C++ #Coding #SPH #Explicit

    Ok , I have been done some testing comparing C++ and Fotran90 Smoothed particle Hydrodynamics codes. I get less than the half of calculation time Fotran 90. I discovered later that the comparison has been not fear, due to one of the 12 threads was writing outputs each 1/10th of the total time, whereas F90 code only writes an output at end time. The problem solved is: Cantilever Beam subjected to bending at one end. SPH Method. 3744 particles. Explicit Reduced Verlet (constant time step) integrator. C++ is with an AOS scheme (vector of class Particle Pointers) and F90 is with a SOA scheme (Structure of arrays).

    Italian Trulli Italian Trulli
Contents

Search

  • FEM
  • TETRA
  • WeldForm
  • Locking
  • HEXA
  • Hourglass
  • FVM
  • GPU
  • SPH
  • 2
  • AMR
  • Meshing
  • GUI
  • Python
  • OpenRadioss
  • C++
  • Remesh
  • DynELA
  • MSVC
  • Singleton
  • architecture
  • meshing
  • VTK
  • gmsh
  • Forming
  • CUDA
  • GTN
  • Top10
  • Performance
  • OpendGL
  • Thermal
  • Axisymmetric
  • OpenGL
  • Explicit
  • DSIF
  • AxiSymmetric
  • Contact
  • Material
  • MPM
  • GMT
  • Forge
  • Axisymmetry
  • PFEM
  • Kratos
  • Tutorial
  • Configure
  • importMainSolid
  • self.t0p=timer.clock()
  • OpenFOAM
  • Forging
  • Algorithm
  • Eulerian
  • ABAQUS
  • ALE
  • FORTRAN
  • Coding
  • Failure
  • Damage
  • OSS
  • List
  • LAMMPS
  • Charpy
  • Cutting
  • Refs
  • JohnsonCook
  • Drilling
  • Tensile
  • Test
  • Law
  • Ansys
  • Implicit
Footer
Visit counter For Websites