Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
L
LMGC90_user
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 0
    • Merge Requests 0
  • Operations
    • Operations
    • Incidents
  • Analytics
    • Analytics
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • LMGC90
  • LMGC90_user
  • Wiki
  • release_notes

Last edited by Rémy Mozul Mar 09, 2021
Page history

release_notes

Release notes

This page aims at keeping major information regarding the changes of function names, argument names or whatever between the different versions of LMGC90.
This is not release notes 'stricto sensu'.

  • 2020->2021
  • 2019->2020
  • 2018->2019
  • 2017->2018
  • 2016->2017
  • 2015->2016

version 2021

  • Adding a lot of tutorial material as jupyter notebook
  • Adding a reader of DATBOX to generate pre container, have look to:
    • pre.readDatbox
    • pre.readState
  • There is period of two months in which the internal parameter numbering changed for contactors and contact. If a hdf5 file as been generated before this parameters where stored inside the file, there is no way to know what parameter numbering to use. In case of problem, the io_hdf5_fixVersion might help.

version 2020

  • General fixes in Core, API and documentation
  • Minimum required version of CMake is now 3.0
  • Minimum required version of gcc suite is now 4.5
  • Support of gcc 10
  • Support of ubuntu 20 and ArchLinux for building
  • Better handling of link with Siconos library
  • Gmsh:
    • update pre.readMesh function to handle gmsh file formats 4.0 and 4.1
    • add a gmshutils submodule to pylmgc90, available only if gmsh python module is available
  • MatLib:
    • Possibility to set material as nodal field
    • as such ExternalModels_CheckProperties is now split in ExternalModels_StoreProperties and xxxxMAILx_CheckProperties
  • HDF5:
    • better detection
    • add script to build and use for Anaconda on Windows
    • add parameters association to Help group
    • add some tentative example of postprocessing the files in examples/Tutorial/post
  • Interaction API: partial disambiguation of interaction accessors in inter_handler wrap modules using t to name this interaction:
    • getNb -> tgetNb
    • getTactLawNb -> tgetTactLawNb
    • getIdBodies-> tgetIdBodies
    • getInternals -> tgetInternals
    • setInternals -> tsetInternals
  • Huge changes in the management of cohesive laws:
    • concerning the type of law:
      • removed TRI_CZM law
      • added EXPO_CZM, IQS_EXPO_CZM, EXPO_CZM_SPRING and ISQ_EXPO_CZN_SPRING
      • added GTN_CZM and GTN2_CZM, but not usable in the solver yet
    • management of mixity normal/tangent for these laws changed:
      • removed functions of tact_behav modules: SetG1overG2, SetS1overS2 and SetD1overD2
      • instead all tact laws managing mixity must replace parameters w and smax with s1, s2, G1, G2 (and maybe dp1, dp2)
    • pressure in crack is no longer set using contact law parameters thus:
      • p and p0 are no longer parameters used to define contact laws
      • instead the tact_behav_SetPressureParameters function must be used
      • needed to add get_external_pressure function in CLALp and CSASp functions
    • implementation in kernel interactions of TAZ (Temporary Array Zone) accessible with nlgs_SetTemporaryVariable and nlgs_GetTemporaryVariable
    • new examples added :
      • RIGID_2D/4POLYG_SHEAR_CYCLE_CZM
      • mecaMAILx_2D/2Q4_PressurePostCracking
      • mecaMAILx_2D/InclusionPreDamage
  • Standardize dilatation of DISKx, xKSID and POLYG contactors:
    • Deletion of DISPx and xPSID now useless modules and all detection module associated
    • all three contactors DISKx, xKSID and POLYG now have SetXdilation, SetVdilatation
    • function SetVther and SetXther of DISKx and POLYG module deleted instead
    • use of get_Vd_xxxxx, set_Vd_xxxxx and set_Xd_xxxxx function in contactor modules instead of get_vth_xxxxx and similar
    • added example examples/RIGID_2D/Couette
  • Lot of correction in postprocessing modules
    • DOUBLET TORQUE EVOLUTION -> DOUBLETS TORQUE EVOLUTION (in pre, file names and parameters)
    • DOUBLET INTERACTION -> DOUBLET INTERACTIONS (in pre, file names and parameters)
    • removed QUASI SLIDING CONTACT
    • added the following commands to pre:
      • DENSE SAMPLE COMPACITY
      • DISPLAY TENSORS
      • AVERAGE VELOCITY EVOLUTION
      • DRY CONTACT NATURE
      • WET CONTACT NATURE
      • PLPLx_ANALYSIS
      • COMPACITY EVOLUTION
      • TRIAXIAL COMPACITY
      • PRxxx DETECTION
      • INTER ANALYSIS
      • VISIBILITY STATE

Other changes in API:

  • Changed PT3Dx_SetReferenceRadius to PT3Dx_SetDisplayRadius
  • Added CSASp_Trim function
  • Added CSASp_SetNonSymmetricDetection
  • Added mecaMAILx_AddBodyForceToFext function which allow to add a nodal acceleration on a meshed body
  • Added contact law xQS_WET
  • Changed CLALp_SetNonSymetricDetection to CLALp_SetNonSymmetricDetection
  • Fix bug when reading CSASp and CSPRx ascii files
  • DISKx_GetRadius now correctly use a contactor number in
  • From now on ReadIniVlocRloc MUST be called AFTER LoadTactors

version 2019

  • General fixes in Core, API and documentation
  • Add support of gitlab CI to run non regression tests
  • Add possibility to run examples using Ctest
  • Re-activation of windows cross-compiling script
  • Fix in python API of ANN library
  • Add getVerletAdjsz, getVerletIantac and getAllIdata accessors to inter_handler modules to get contactor verlet map of interactions
  • Improve efficiency of VTK file writing when using vtk6 or higher
  • Add possibility to build LMGC90 using conda compiler on Windows and Linux
  • Add support of IQS_CLB_RGR contact law in pre
  • Add UseCurrentNonuc0 to PTPT2 module (like in 3D) and add corresponding test

Impact on command scripts

  • to add user fields when calling WriteDisplayFiles command, tactor keyword must be replaced by tacts

version 2018

  • General fixes in Core, API and documentation
  • T3xxx mechanical finite element now use 3 Gauss points for stiffness computation (instead of 1 before). To use only 1 Gauss points there are now T3lxx and Te4lx elements
  • Add NARD_ROD contact law of Artoni and Neveu
  • Improve management of big polyhedra
  • Improvement of paraview visualization files generations
  • All ReadIni functions can now take in negative input value to read the *.LAST files and write the next files from the absolute value of the input value
  • Update in MP modules, especially in read/write API
  • A newer version of the MatLib is provided by default
  • pre.lecture real name is now pre.readMesh (but is still usable as is)
  • Switch all docstrings and error/warning messages left in french to english
  • checkInteractiveCommand now tries to write MP_VALUES files
  • dim parameters is now mandatory in function pre.writeBulkBehav
  • In pre.rigidJonc and pre.rigidPlan last axes MUST be less than the others
  • Automatic switch between HDF5 and old OUTBOX directory and associated documentation added
  • Add rigidsFromMesh3D in the preprocessor
  • inter_handler_xD_setInternal accept either a vector to set all value at once, or an integer and a value to set only one component of the internal array
  • Add triangle intersection detection between POLYR contactors
  • Fixes of periodicity management in 3D
  • CLALp module can now provide for each contact the value of strain of its nearest Gauss point
  • Default use of MUMPs in 3D if available
  • Added notebooks to explain how to add user field in Paraview files
  • Added function RBDY3_CheckEquilibriumState
  • Cleaning of source code (optional non functional WITH_NEW compilation flag and all associated code has been removed)

Impact on command scripts

  • It is now recommended to use:
chipy.ReadIni(step)
chipy.ReadIniMpValues(step)
chipy.WriteOut(freq)
chipy.WriteOutMvValues(freq)

which will read or write all stored data within the database, instead of specifying all type of files (DOF, GPV, VlocRloc, MP_VALUES).

  • The function:

    chipy.overall_WriteOutMpValues

    is renamed:

    chipy.TimeEvolution_WriteOutMpValues

Impact for Core developpers

The function:

write_out_mp_values

is renamed:

write_xxx_mp_values

version 2017

  • Better handling of Python 3 on MacOs
  • Datafields Reac_ and Raux_, used in accessors, are now forces. New fields Ireac and Iaux_ have been added to access impulsions
  • Access to parameters value through variable in chipy module
  • Use of an inter_handler_2/3D interface module instead of accessing each interaction module separately
  • Add a RecupRlocByPosition for CLALp and CSASp contacts
  • A partial restart of the post-processing files
  • Any GMV related features has been deleted
  • Possibility to write HDF5 files for DOF, GPV and Interactions
  • Add bindings to clipper library to help with the contact detection between polyhedra
  • Use of integer parameters instead of string for contact status in solver
  • Several fixes on the timers (especially when involving multi-threading)
  • Fix of minor bugs here and there

Impact on command scripts

  • Reac_ and Raux_ fields are not available through getPtrBodyVector (but Ireac and Iaux_` are)
  • Old interactions accessors (like DKDKx_GetNbDKDKx) disappeared
  • They are replaced by functions of the form chipy.inter_handler_2D_getNb( inter_type_id ) where inter_type_id is an integer
  • The inter_type_id is accessible through variables of the chipy module (chipy.DKDKx_ID):

Impact for Core developpers

  • Reac and Raux become Ireac and Iaux in the body type definition
  • Many functions/accessor in detection modules disappeared. The main way to access to interaction is now through the handlers
  • Look into the inter_handler_2/3D module, the public sections list the available functions in each module. The first parameter is the type of interactions which is an integer from the parameter module.

version 2016

There are several changes concerning the pre python module.
Remember that a script is provided in lmgc90_user/src/addons attempting to update a single script or all python scripts in a directory tree.

If lmgc90_user/src/addons is in your $PATH environment variable, run:

update_gen_2016.py gen_sample.py

To update gen_sample.py script.
You can replace the script name by a directory to try to update all python scripts in it.
There are cases where the script may fail, here is the list of changes so that you can correct you scripts yourself:

  • change of pre_lmgc submodule name to pre (submodule of pylmgc90)
  • in tact_behav constructor, argument name type is replaced by law
  • in model constructor, argument name type is replaced by physics
  • in material constructor, argument nametype is replaced by materialType
  • in avatar.addContactors method, argument name type is replaced by shape
  • in avatar.rotate method, argument name type is replaced by description
  • in avatar.imposeDrivenDof method, argument name type is replaced by description
  • in postpro_command constructor, argument name type is replaced by name
  • in buildMesh2D function, argument name type_mesh is replaced by mesh_type
  • in brick2D.deformableBrick method, argument name type is replaced by mesh_type
  • in brick2D.explodedDeformableBrick method, argument name type is replaced by mesh_type
  • in avatar constructor, argument named type has been removed
  • in node constructor, argument named type has been removed
  • in element constructor, argument named type is replaced by elem_dim and the corresponding value must be the geometrical dimension of the element

back
Clone repository
  • compilation
  • container
  • documentation
  • download_and_install
  • faq
  • first_steps
  • Home
  • jul_2015
  • jul_2016
  • jul_2018
  • linux_dependencies_install
  • macos_dependencies_install
  • prerequisites
  • release_notes
  • training all
View All Pages