Mentions légales du service

Skip to content
Tags give the ability to mark specific points in history as being important
  • v15.38
    - Support #676: XCode: put back the Stokes / 2 operators which was no longer in the project.
    - Bug #675: There was a compilation error in syntax of Assemble(), that frankly I do not understand (it was fine with former clang and current gcc). Work around it by modifying slightly call to Assemble().
    - Support #674: Update XCode project for XCode 7.
  • v15.36.2
    Bug #643: Fix bug introduced in #642.
  • v15.36
    - Support #606: Create a method InitializeVectorSolution in VariationalFormulation.
    - Feature #631: Add a TransientSource to the current ReactionDiffusion model.
    - Bug #642: Heat failed in parallel due to a missing call to Assembly() in the method in charge of boundary conditions. ONly heat was affected as it is the only model with two different Dirichlet condition (FSI also but it was not tested at the time).
    - Bug #641: Replace jacobian determinant by absolute value of jacobian determinant in all operators. Get rid of unused functions that were relics from FELiScE.
    - Feature #611: Remove the tuples defined in Model: it was cumbersome and somewhat redundant with the input parameter file. Now meshes, god of dofs, domains and so on are created by looking on their instances in the input parameter tuple.
    - Support #629: Now hyperelastic laws are in their own namespace.
    - Support #628: Hyperelasticity is now compiled as a library.
  • v15.35
    - Feature #633 (and its children #626, #634, #635, #636, #637, #639, #640): Refactor heavily InputParameter utility: now it is possible to use as many subsections as you wish, whereas previously only one depth level was allowed. Macros have been removed and replaced by classes; many boilerplate operations are no longer required (for instance no need to define section for each input parameter).
    - Feature #624: XCode/git remove the gitattributes lines that was there to help merge of XCode project (it no longer works with current XCode).
    - Feature #620: Extend former InterpolateToSubsetFeltSpace so that interpolation can also occur from a finite element space to a bigger one. A test case has been provided as well.
    - Feature #605: Refactor Dirichlet boundary conditions, so that variable conditions may be used (as vel_fluid = vel_solid for instance).
  • v15.28
    a5ad4a1c · #614 Update TAGS. ·
    - Bug #614: New policy introduced in #607 was not reported correctly for all parameters (only Elastic model was up-to-date). DRY principle has been applied so that next time a new policy is introduced for a parameter such a bug can't appear again.
    - Support #610: Update XCode templates.
    - Feature #607: Introduce a new policy for Parameters: PiecewiseConstantByDomain.
    - Feature #604: Boundary condition are now be defined upon a domain (previously it was upon mesh label list).
    - Profile #27: Successfull compilation with link-time optimization and clang compiler (#603 has been issued for gcc). This mode is now activated in both XCode and SCons/clang release builds.
  • v15.27
    93c3714b · Update TAGS. ·
    - Feature #569 - #600 - #601 - Support #602: Implement a ReactionDiffusion Model (for that implement a NonLinearSource operator). Currently two are implemented: FitzHugh-Nagumo and MitchellSchaeffer.
    - Feature #587: Local2Global arrays are now managed entirely at LocalFEltSpace level. Thus some copies are avoided, and it offers better granularity for processor-wise local2global: it is now possible to compute them only for the operators that require them, rather than at the whole Model level.
    - Support #597: Rearrange RefFElt classes (names were not accurate and comments were not very helpful).
    - Support #595: Update code to make it work with brand new Petsc 3.6.
    - Feature #191: Refactor the way Unknowns are handled: Unknown variable is not just a name and a nature; shape functions and unumbering subset are defined in a new class named ExtendedUnknown (which replaces the clumsily named UnknownAndNumberingSubset). Quadrature rules may now be defined specifically for each operator.
  • v15.26
    536d7a4b · Update TAGS. ·
    Support #592: Minor refactoring of RefFEltInLocalNumbering.
    - Bug #589: Clarify which dimension should be used in intermediate matrices of local variational operators. Now the heat may work in 2D.
    - Bug #586: Correct a bug in grad-grad operator: work matrix allocation assumed a vectorial unknown.
    - Feature #185: Shape function label is no longer glued to the unknown in general, but to an unknown in a finite element space. So you might have displacement/P1 in one finite element space and displacement/P2 in another, which wasn't possible previously (or you would have had to cheat and name differently the unknown).
    - Feature #583 - #26: Heavy refactoring of quadrature rules management; now each operator may use its own quadrature rules.
    - Feature #579 - #588: Introduce the new policy AtQuadraturePoint for parameters; add the possibility to evolve with time (not for the whole Parameter class, just for Parameters that inherit statically from this new policy).
    - Feature #578: Parameter: add a Write() functionality. Content of this Write() is not entirely satisfactorily though: composite parameters just specify the values of their components, and Lua functions are not written inside (see #581).
    - Support #576: Few minor corrections suggested by cppcheck.
  • v15.24
    9751cee7 · #575 Update TAGS. ·
    - Design #575: Remove calls to SubMatrix and SubVector in the actual code, as the former is not well maintained in Seldon (the latter is actually implemented in HappyHeart). Anyway, as it is used in read-only in current code it is more appropriate to play with the indexes in the full matrix rather than using SubMatrix for which many pointer indirectsion were incurred.
    - Profile #532 (partially): Avoid memory allocation when accessing ghosted values in a Petsc vector.
    - Design #540: Clean-up hyperelastic operator; also avoid SubMatrix use.
    - Design #539: Rewrite GradOnGradientBasedElasticityTensor::ComputeEltArray() to avoid SubMatrix use.
    - Design #538: Rewrite Mass::ComputeEltArray() to avoid SubMatrix use.
    - Feature #501: Refactor TransientParameters to make it more generic (the time might now not be given as successive time iterations, even if at the moment only this policy is provided).
    - Support #573: Add a message in an assert to point out the most likely reason it happens (namely because the unknown has not properly been registered by the model).
    - Feature #572: Extend the code to support discontinuous finite elements. So far only zero order has been added for geometric-based elements (not the Spectral).
    - Bug #571: ThirdParty: Correctly take debug/release for Yuni depending on HappyHeart compilation mode.
    - Support #570: Few corrections to make the code work under Ubuntu with gcc-5.1.
  • v15.23
    679396cd · #564 Fix a gcc warning. ·
    - Feature #564: The interface of Parameter has been refactored; now each instantiation must detail a GetConstantValue() and a GetValue() with the latter taking a quadrature point and a geometric element,
    The Local->Coords operation is if required performed within the Parameter class; the choice of the nature of the Lua function (local or global) is performed at the definition of the InputParameter object.
    - Bug #563: Fix the bug forbidding two calls to FEltSpace::ComputeFEltSpaceProgramWiseIndexList().
    - Feature #556: Introduce the appropriate Parameter(s) for each model instance. In some of them, there is the requirement they are constant (as variable case would required a heavy rewrite of the model.).
    - Support #560: Update Seldon to the latest version (still a dev one).
    - Design #558: Parameter::GetValue() is now overloaded: there is a version that takes a Coords and another that takes a QuadraturePoint. It remains to be seen if the former should be kept; it is actually quite convenient in the definition of transient sources.
    - Design #557: Make a library for operators; the new hierarchy is:
        Utilities/ThirdParty < Core < Geometry < FiniteElement < Parameters < Operators < FormulationSolver < Model (but no file compiled at this point for it).
    - Design #553: Operators in the Elastic model are now defined with the brand-new Parameter class.
    - Support #543: Use new Seldon library rather than home-made one.
  • v15.20
    - Support #528, #370, #551, #285, #115: various cleaning-up in the code (canonical form for classes, final keywords, more appropriate smart pointers for each class and so forth...)
    - Bug #547: Fix compilation bug in XCode for release mode.
    - Support #545: VariationalFormulation: merge DefineOperators() (previously required by the CRTP of the base class) within SupplInit().
    - Feature #511: Create a Stokes operator and use it in Stokes model. The previous instantiation of Stokes can still be used with the macro STOKES_MODEL_WITH_TWO_OPERATORS activated (an XCode target has been created for that purpose).
    - Design #537: Implementation of the local variational operator GradPhiGradPhi has been improved.
  • v15.19
    - Support #543: Ops is now the 'official' version rather than a home-modified one. Source are no longer embedded, even if XCode (or SCons) are still in charge of the compilation.
    - Design #536: ScalarDivVectorial implementation has been much improved.
    - Feature #535: Now in a LocalVariationalOperator instance a different kind of Seldon matrix might be used (typically one can use symmetric matrix to define ScalarDivVectorial).
    - Feature #510: Unify Stokes and NonMonolithic Stokes into one same Model.
    - Feature #515: Update HeatModel with changes made in #410.
    - Feature #531: Refactor deeply assembling. Most prominent new feature is that is is now possible to assemble into as many matrices and/or vectors as you like in one call.
    - Feature #527: GlobalVector and GlobalMatrix are now full-fledged classes which also embed references to numbering subsets.
    - Support #425: Refactor numbering subset for more flexibility.
    - Bug #517: InputParameterList has been rewritten to work even with plenty of input parameters. New methods introduced in Mpi wrapper to that purpose.
    - Feature #521: Non monolithic Stokes has been rewritten to use up only one variational formulation. This is a preliminary step to fuse monolithic/non monolithic ine one same model.
    - Feature #512: Variational has been amended to be able to store several global matrices and vectors (one per block matrix).
    - Bug #507: Correct two very minor bugs (one about default scheme in XCode, the other about the location of Ensight related outputs).
  • v15.17
    951e3536 · Update TAGS. ·
    - Support #500: In Model, UpdateTime() is now called in InitializeStep() rather than in FinalizeStep() (to ease interface with Verdandi).
    - Support #506: Refactor ElementaryData and GlobalVariationalOperator, which now displays  policy for unknowns, which is especially in charge of injecting local linear algebra into global one. This is both more efficient (static dispatch) and cleaner: formerly too much code was repeated.
    - Support #503: Add option MAT_NO_OFF_PROC_ZERO_ROWS for parallel matrix, which is more efficient according to Petsc's documentation. Modify the initialization of boundary conditions so that this condition is effectively fulfilled.
    - Support #502: Introduce macro to ease declaration of input parameters for each model instance.
    - Support #490: Update the XCode templates related to creation of a new ModelInstance (i.e. all of them save the operator-related ones).
    - Support #495: Post processing has been adapted to new paths featuring the numbering subset.
    - Feature #496: Extend ComputeMatrixPattern and VariationalFormulation to handle properly non square matrices (for which row and columns are described by different numbering subsets).
    - Support #502: Introduce macro to lighten the reading of model instances input parameter list.
    - Feature #474 - #480 - Support #499: Introduction of numbering subsets.
  • v15.14
    - Support #487: Clean-up interface: for instance it is no longer required to define a method in Model to build the GodOfDof: Model is able to do it itself with just few tuples that indicate which objects in the input parameter file are related to a given god of dof.
    - Feature #478 - Design #202 - Support #233: FiniteEltSpace is now built from informations in the input parameter file. Unknowns handling has been strongly refactored in the process.
    - Feature #482: refactor domain, and build domain objects directly from informations in the input parameter file. A DomainManager and GeometricMeshManager have been introduced in the process.
    - Design #360: Review all uses of std::move and remove unrequired ones.
    - Feature #439: Reactivate Stokes model: replace one of the Dirichlet condition by an additional operator. Rename it more properly.
    - Support #470: Very minor changes in Elastic model.
  • 15.12
    - Bug #469: Fix several mpi bugs, most of which that occurred in the degenerate case in which one of the processor doesn't get any ghosted dof.
    - Feature #468: Hyperelasticity: produce 4 mains to represent all the combinations hyperelastic law/time schemes.
    - Feature #466-#467: Clean-up forces involved in Elastic and Hyperelastic models: it is no longer a hack to decide whether the force is surfacic or volumic, and one of each can be used at the same time. Also clean-up Lua files so that comments are really on par with latest code.
    - Feature #463: Modify the library so that Point geometric and finite elements can be used.
    - Feature #464: avoid some repeated allocations of Seldon matrices and vectors in ShapeFunctionAtQuadraturePoint.
  • v15.11
    2103b1a1 · Update TAGS. ·
    - Bug #459: Fix the quadrature rule related to a point: now gets 0 component rather than 1.
    - Bug #460: Creation of default input parameter file was broken in parallel. Now it is done without asking the user (as stdin with Openmpi seems to be very tricky).
    - Support #457: Data directory has been cleant-up: now there are toy meshes and input parameter lua files for each model, and paths are given with environment variables /Users/sebastien and sebastien. There is an assumption however that M3DISIM organization is used (namely HappyHeart should be in /Users/sebastien/Codes/Happyheart).
    - Support #458: Add Replace() function for std::string.
    - Support #107: I've finally managed to build happy heart with static libraries in command line build. So now one can choose whether to use static or shared libraries.
    - Support #390: In SCons build, create libraries for source files associated to each model instances and copy them to the Build directory. New scheme allow to define several executables for the same ModelInstance.
    - Bug #440: A test in an assert has been modified: there was the underlying assumption that EdgeContent alias was always a std::vector or std::array, which is not the case (it is std::false_type for Point for instance).
    - Bug #446: Index in State operator was not correctly computed.
  • v15.10.2
    c14f1d75 · #451 Also modify Heat. ·
    - Feature #455: Petsc Matrix: introduce accessor to values.
    - Feature #454 - Bug #421: Handle as gracefully as possible the case in which an exception causes the stop of a processor. In that cas, MPI_Abort() is called to avoid dangling program.
    Code has also been modified to ensure there is no interleaving between exception messages from several processors.
    - Bug #453: Matrix::GetProgramWiseSize() and GetProcessorWiseSize() were buggy.
    - Feature #452: Make Openmpi wrapper rely on C API rather than C++ API: the latter is deprecated and due to be removed in future versions of OpenMPI.
    - Bug #445: In hyperelastic case for a 3d mesh, a matrix was not correctly initialized. To find out that, a handful function that checks NaN values in local matrices has been introduced.
    - Support #441: Fix all compilation warnings: clang and gcc in debug and release mode.
  • v15.10
    0dd124eb · Merge branch '237_point' ·
    - Bug #23: Point now gets properly a dimension of 0.
    - Feature #438: Coords now stores 3 components even if the mesh is 1D or 2D. Utilities::POint has been disbanded.
    - Bug #444: Soolve a bug with Ensight mesh output: an endline was unduly deleted.
    - Support #421: REmove the boundary condition types, inherited from Felisce but actually not implemented. Dirichlet conditions are anyway bound to be discussed and refactored cleanly.
    - Support #437: Rename more appropriately some files, classes and template parameters.
    - Support #433: Input parameter: create cpp files to separate declaration and implementation. For template parameter structure, define only the Section() method as a template to avoid code bloat.
  • v15.08
    f25b817b · Solve merge conflicts. ·
    - Support #436: Input parameter list descriptions are now automatically formatted not to exceed a certain line length.
    - Feature #430: Add the possibility of a 1D mesh (reduction to 1D is applied after the native format has been read.
    - Support #425: Now build folders of SCons compilation may be chosen from the configuration file. The highlight of this is that binaries no longer are synchronized if build directories are put on Data partition.
    - Feature #429: Define an operator to project from one finite element space to a subset of it.
    - Feature #428: A finite element space is now able to generate the pattern of one of its vector (said vector is smaller than GodOfDof's ones).
    - Feature #427: FiniteEltSpace now contains a weak_ptr to its enclosing GodOfDof. So GodOfDof informations are now accessible from any of the finite element space it contains; it is very handy for instance to identify the ghosted dofs.
    - Bug #422: boundary conditions dofs were not reduced to processor-wise only.
    - Bug #426: Dof ordering relationship was incorrect: using program-wise indexes there could lead to some ghost being stored before the processor-wise dofs. Using processor-wise ior ghost indexes solve this issue.
  • v15.07
    - Support #419: Report early Gautier's correction in Seldon and Ops projects.
    - Feature #378: Add the heat equation in ModelInstances.
    - Support #418: Update scripts and run cppcheck upon the code to improve it.
    - Design #416-#417: Implement a thin wrapper in Seldon to wrap HappyHeart's wrapper of a Petsc vector.
    - Bug #415: Two template functions in Ops were wrongly in cxx file.
    - Support #414: Reactivate g++ compilation; extend SCons interface so that two different compilers can be used.
    - Support #412: Wrote a first draft of XCode template for both global and local variational operator.
    - Support #406: Add a transient source operator.
    - Support #343: In SetFiniteEltList(), add a check of adequation for the pair RefGeomElt/Domain.
    - Design #364: Use unique_ptr rather than raw ones in GeometricEltFactory.
  • v15.06
    06da2592 · Update TAGS. ·
    - #411 Bug corrected: assembling a matrix-vector operator into only a vector or a matrix was actually not compiling. In the process, it's now easier for a developer to provide its own operator with variadic arguments: he no longer has to bother with matrix and/or vector coefficients.
    - #336 Improve ComputeEltArray implementations; mostly by avoiding memory allocations from Seldon::Transpose (a brand new one has been implemented that performs absolutely no allocation past the initialization).
    - #206 Hyperelastic case has been cleaned-up; there is for instance no longer Seldon vector or matrix allocation past the initialization phase.
    - #405 Fix Doxygen compilation, which was screwed when src was renamed into Sources.
    - #404 XCode template: add new generic files with several layers of namespaces, and improve the current one to handle paths.