Tags give the ability to mark specific points in history as being important
  • v1.13.0   MBsysC version associated to MBsysPad v1.12.0
    Release v1.13.0
    • [Python] A Python interface is available (MBsysPy)
    • [Fix] The norm of the constraints errors were not correctly computed in some specific case (with user constraints and non-independent constraints)
    • [New] The value of the Lagrange multipliers is saved to file.
    • Sensors:
      • function mbs_new_sensor allocate the memory for the sensor, allocate the jacobian and rotation matrices and initialize the fields to 0.
      • function mbs_delete_sensor deallocate all the memory of the sensor including itself (instead of free_sensor)
      • For user: do not call anymore allocate_sensor and init_sensor and call mbs_delete_sensor instead of free_sensor
  • v1.12.0   MBsysC version associated to MBsysPad v1.12.0
    Release v1.12.0
    • [New] Inverse Dynamic module (Invdyn)
      • See examples PendulumSpringC and miscellaneous/Invdyna_Delta
    • XML loading (MbsInfos):
      • New structure names and new functions (adding a mission flag in binding functions)
      • Requires to generate again user files (and user file generation application)
      • Check user IO and user model size coherence between loaded .mbs file and compiled project (Error -900). Do not check type coherence.
    • [User derivative] [Dirdyn] The option "compute_all_uxd" is added during direct dynamic module. The user can choose between the time-integration of all user_derivative or none. Per default, the flag is ON (= 1 = all are computed).
    • [Integrators] Euler Implicit and W-Methods are now functional but have not been extensively tested.
  • v1.11.2   MBsysC version associated to MBsysPad v1.11.2
    Release v1.11.2
    • New error management in all modules
    • New module called Solvekin to study kinematics.
    • [Cython] interface instructions for Windows 10
    • Other small corrections and changes
  • v1.11.0   MBsysC version associated to MBsysPad v1.11.0
    Release v1.11.0
    • Windows 32 bit is no longer supported. An error message is shown when the user try to execute cmake with 32 bit and the process stops.
    • Change to existing function(s):
      • set_output_value : val_index now start at 1 to be coherent with all user indexing.
    • Add new time integrators for the DIRDYN module. Available integrators are now: RK4, Dopri5, Rosenbrock, EulerEx, Eulaire, EulerIm, Bader, WMethods + possibility to implement custom integrator still available.
    • Improvement of integrators:
      • possibility to freeze JAcobian matrix for implicit integrators
      • option to specify whether the model must be re-computed between 2 consecutive time-steps
    • Remove dependency on lapacke by calling directly lapack function
    • Redefinition of set_output_value to save custom quantities in a vector: indices in the saved vector start at 1 and not at 0 (see doc for details)
    • Other small corrections and changes
  • v1.10.0   MBsysC version associated to MBsysPad v1.10.0
  • v1.9.7   MBsysC version associated to MBsysPad v1.9.7
    Release v1.9.7
    • BugFix in equilibrium module (result vector was freed before being printed leading in some case to incoherent value)
    • Add an integrator (Rosenbrock) dedicated to stiff problems: simply set the flag to use rosenbrock in dirdyn option to ON: mbs_dirdyn->options->rosenbrock->flag_use = 1; (same as for Dopri5)
    • Add an application to generate VTK/ParaView output files. This required some adaptation of OpenGL 3D visu of NVdN (see merge request !135 for details). Requirements:
      • Ubuntu: sudo apt-get install libvtk6-dev libproj-dev
    • Remove deprecated headers, MBSdataStructR7.h and MBSfunR7.h. If some old symbolic routines still use these headers, they can be re-generated from MBsysPad to get the proper headers.
    • Remove nwheel and rnom fieds from the MbsData structure. If necessary, those values should be defined via a user model.
    • Add the possibility to load vrml files in the OpenGL 3D view

    NB: Project created with v1.9.6 should be directly compatible to v1.9.7. It might be needed to generate the user_model files again (via MBsysPad, Tools/Generate C-specific user files/User model files)

  • v1.9.6   MBsysC version associated to MBsysPad v1.9.6
  • v1.9.5   MBsysC version associated to MBsysPad v1.9.5
    Release v1.9.5

    To be completed

  • v1.9.4   MBsysC version associated to MBsysPad v1.9.4
    Release v1.9.4
    • Add a python interface for driving the simulation via a python script (see MBsysC/readme_aux/interface_python.md and MBsysC/mbs_interface/mbs_python)
    • Add the possibility to embed a MBsysC project in a simulink S-function (see example in MBsysC/mbs_interface/mbs_simulink)
    • Enable a "separate build" mode for compiling. This enables to compile MBsysC modules only once. Then, only the project specific files (user functions, symbolic functions and main function) must be compiled for each project. The old fashion compiling (i.e. monolithic build) which compiles both MbsysC and project specific files together is still available and set as the default option in the CMakeLists.txt of a nex project. This requires to adapt existing projects. In particular, CMakeLists.txt are added to userfctR and symbolicR folder. The CmakeLists.txt file in the workR folder is modified. Include in the userfct/realtime files are also modified.
    • Correct a bug that prevent loading *.mbs file after starting 3D visu because the decimal separator may be changed from dot to coma
    • Use a uniform syntax for helpful functions that manage arrays and matrices. This may require to adapt the name of those function if you use it in you user functions. (see MBsysC/mbs_common/mbs_utilities/useful_functions.h )
    • Add new modules for equilibrium and modal analysis
    • Add the possiblity to animate auxiliary *.mbs file in addition to the simulated one. The motion of the auxiliary *.mbs must be computed by the user. This modification requires to update the template files user_realtime_options.c and user_realtime_visu.c
    • update the findJNI and findJava CMake file for compatibility with java 8
    • Use pre-processor flag LINUX rather than WIN32 for os specific part of code
  • v1.9.3