Skip to content
  • v4.7-1
  • 0804136
  • Compare
    Choose a tag to compare
    Search for a tag
  • v4.7-1
  • 0804136
  • Compare
    Choose a tag to compare
    Search for a tag

@prj- prj- released this Oct 17, 2020

Changed

  • change the language definition to use type as a construction function with named arguments for bem plugin
  • PETSc version 3.14.0
  • ARPACK compiled by SLEPc
  • Mmg version 5.5.0
  • -std=c++14 instead of -std=c++11 when possible

Removed

  • plugins thresholdings, symmetrizeCSR, and fflapack and associed example

Fixed

  • problem compilation with gfortran-10 of arpack and mumps (add -fallow-argument-mismatch flags)
Assets 5

@AFourmont AFourmont released this Sep 3, 2020 · 64 commits to master since this release

Added

  • add Ns normal vector in R^3 on meshS (normal of the surface) of current point (to day Ns of [x,y,0] plan is [0,0,-1]) no be compatibe to exterior normal.
  • add Tl tangent vector in R^3 on meshL (tangent vector of the line/curve) of current point
  • compile ffmaster / ffslave example under windows (thanks to johann@ifado.de)
  • Boolean parameter spiltpbedge in buildmesh to split in to edge with two boundary vertices
  • interface to PETSc DMPlex, see examples/hpddm/DMPlex-PETSc.edp
  • function MatDestroy
  • function MatPtAP and transferMat for parallel interpolation between non-matching grids, see examples/hpddm/PtAP-2d-PETSc.edp or examples/hpddm/diffusion-mg-2d-PETSc.edp
  • preliminary interface to SVDSolve from SLEPc to compute singular value decompositions, see examples/hpddm/mf-2d-SLEPc.edp or examples/hpddm/helmholtz-2d-SLEPc-complex.edp
  • preliminary interface to NEPSolve from SLEPc to solve nonlinear eigenvalue problems, see examples/hpddm/nonlinear-2d-SLEPc-complex.edp
  • transpose parameter when constructing a Mat for defining a matrix-free transposed operation
  • interface to PetscMemoryGetCurrentUsage
  • add P2b, RT0, RT1 surface FE (P2bS, RT0S, RT1S))
  • add operator interpolate (2d->3d surface)
  • add operator x = A'*b; where x, b are array and A 2 dim array (full matrix) and generate an error in case of b'*A or b'*A expression
  • function MatLoad to load a PETSc Mat from disk, see examples/hpddm/MatLoad-PETSc.edp
  • possibility to assemble a symmetric HMatrix<complex> and to densify a HMatrix<complex> into a Mat<complex>

Changed

  • moved Htool to its new GitHub location
  • ScaLAPACK and MUMPS are not compiled by PETSc anymore if there is no Fortran compiler
  • MPICH is compiled by PETSc if no MPI is detected during configure, see https://community.freefem.org/t/feature-request-use-download-mpich-on-ubuntu/407
  • PETSc version 3.13.5
  • force --with-cudac=0 in make petsc-slepc, see #141
  • change DSL keyword P1dc3dL->P1dcL and P1dc3dS->P1dcS
  • rename view, hasType, changeSchur to respectively ObjectView, HasType, and ChangeSchur

Deprecated

  • rename changeNumbering, globalNumbering, originalNumbering, changeOperator, destroyRecycling, and attachCoarseOperator to respectively ChangeNumbering, GlobalNumbering, OriginalNumbering, ChangeOperator, DestroyRecycling, and AttachCoarseOperator
  • Nt the normal vector of the current (wrong on meshL) use Ns pr Tl

Removed

  • augmentation routine from the PETSc plugin
  • MPIF77 variable

Fixed

  • lot of mistake in MeshL element add a example o ckeck lot of thing tutomesh1d.edp
  • fixed problem of change of mesh when rebuild 2d mesh with builmesh, .... (Thank to P. Jovilet to points this problem)
  • missing METIS library when using SuiteSparse compiled by PETSc
  • missing -fno-stack-protector when building PETSc on Windows, see https://community.freefem.org/t/error-loading-complex-petsc-slepc-library/370
  • fixed ffglut for the plotting of FE array solution
  • fixed ffglut bug on MacOS Catalina , draw inn only half windows screen (Apple Bug ???)
  • correct P0VF finite element
  • abs function of array
Assets 4

@sgarnotel sgarnotel released this Apr 2, 2020 · 286 commits to master since this release

Warning: this is an automatic release. If you encounter some trouble with packages, post a message in the forum.

Added

  • new function hasType to know if a PETSc component has been installed, e.g., hasType("PC", "hypre")
  • eigenvalue problems on linear elements, cf. examples/eigen/LapEigen1DBeltrami.edp or examples/hpddm/laplace-beltrami-3d-line-SLEPc.edp
  • --download-cmake in PETSc configure if there is no CMake available
  • flags --with-[slepc|slepccomplex]-include and --with-[slepc|slepccomplex]-ldflags for when SLEPc has been built outside of FreeFEM or PETSc
  • interface to KSPSetResidualHistory and KSPGetIterationNumber
  • interface to mpiWaitAll
  • new function extract, allows to build a curve mesh from a 2d mesh (can extract a labeled boundary, apply a geometric transformation)
  • ffglut can plot a vectorial FE function in surface 3d
  • distributed ParMmg interface, cf. examples/hpddm/distributed-parmmg.edp or examples/hpddm/laplace-adapt-dist-3d-PETSc.edp
  • new parallel interpolator on non-matching meshes, cf. examples/hpddm/transfer.edp
  • ability to solve problems in single precision or with 64 bit integers

Changed

  • new tgv values: -10 => zero row, -20 => zero row/column
  • Windows binary now shipped with PETSc/SLEPc
  • BEM examples are now in examples/mpi
  • plot border type is now in 3d (border 2d and 3d)
  • PETSc version 3.13.0

Deprecated

Fixed

  • --enable-download_package may now be used to download a single package, e.g., --enable-download_metis
  • compilation of PETSc under Windows
  • compilation of plugins when using static libraries
  • correct detection problem in FE type when use a vectorial FE
  • macro concatenation with spaces in arguments
Assets 6

@AFourmont AFourmont released this Feb 10, 2020 · 542 commits to master since this release

Added

  • new mmg and parmmg (parallel mmg) plugins interfacing mmg5 and parmmg libraries, to replace mmg3d-v4.0 and freeyams (Thanks to P-H Tournier)
  • a true 3d anisotropic mesh adaptation examples/3d/Laplace-Adapt-aniso-3d.edp
  • an example to extract surface mesh from isovalue in examples/3dSurf/Pinochio.edp
  • function f.eatspace to reach eof on istream file which return false in case of EOF.
  • function f.length to get the istream file length
  • Interface to PetscLogStagePush()/PetscLogStagePop()
  • Ability to directly assemble a Mat using a varf
  • New bem plugin for the Boundary Element Method (using htool and BemTool libraries)
  • New DSL for BEM (varfbem see examples/bem)
  • add int0d to apply Neumann BC (curve FE), differential operators (dx,dy,...), compute an 1d integral
  • add P1dc FE for Border FEM (possible to define a new FE with plugin)
  • PETSc as a subdomain solver for HPDDM

Changed

  • correct ffglut (bug in case of changing number of nb isovalue)
  • PETSc version 3.12.4
  • Change the point search triangle algorithm to be sure in any case (in test)
  • Sline operator renamed to segment
  • In square3, segment, movemesh functions: geometry transformation can now be [X] or [X,Y] or [X,Y,Z] according to the minimal shape element dim
  • PETSc now download OpenBLAS if there is no BLAS found by FreeFEM configure

Deprecated

  • freeyams plugin
  • mmg3d-v4.0 plugin

Fixed

  • fix plot for curve mesh
Assets 7

@AFourmont AFourmont released this Dec 10, 2019 · 840 commits to master since this release

Added

  • Preliminary support for symmetric distributed PETSc matrices (MATMPISBAIJ instead of MATMPIAIJ)
  • Interface to AMS, Hiptmair--Xu preconditioner for problems in H(curl), see maxwell-3d-PETSc.edp
  • FEM on curve 3D (in test)
  • P0, P1, P2 curve 3D FE (scalar for the moment)
  • i/o medit and vtk format for curve FE
  • checkMesh() function, allow to remove multiple vertices, elements and border elements (argument: precisvertice(double),removeduplicate(bool))
  • possible to build a curve mesh from a surface, ThS = buildBdMesh(ThS) and define this new mesh by meshL ThL= ThS.Gamma
  • can extract a border part of a meshL (meshL ThL = extract(ThL,label=llabs))
  • Support for optimized boundary conditions with PETSc, see helmholtz-2d-PETSc-complex.edp
  • buildmeshL() function: build meshL from borders
  • mpiCommSelf keyword
  • Nt variable defines the normal to the surface ( in case meshS but set to 0 in line mesh )
  • correct eigen values to get eigen vectors for border finite element spaces (surface and line)
  • add examples for border FEM

Changed

  • function buildSurface(...) renamed by buildBdMesh(...)
  • line3(...) renamed by SLine(...)

Removed

  • FFTW is not compiled by PETSc anymore
  • Spurious outputs in TetGen plugin
  • curve3 type -> border
  • hypre examples since it is not downloaded by FreeFEM for many months (use PETSc instead)
  • dscalprod routine from HPDDM and PETSc plugins, use A(u, v) with A a Mat or a schwarz object
  • export function for macro_ddm.idp, use savevtk as in the sequential iovtk plugin

Fixed

  • plotMPI function for plotting 3D solutions, problem with serialize
  • variable mes in clean_mesh function
  • correct bug verflow in plugin iohdf5
  • correct problem with buffer iostrean function (buffer must be out of range )
  • correct i/o vtk and by defaut write at binary format
  • fix an overflow in RT13d FE
  • problem with auto-build of border mesh
Assets 7

@AFourmont AFourmont released this Oct 24, 2019 · 1073 commits to master since this release

Warning: this is an automatic release. If you encounter some trouble with packages, post a message in the forum

Added

  • add matrix and array tools (FH)
     matrix A=eye(10);
     real[int,int] af = eye(10,10);
     real[int,int] a(10,10);
     int[int] I=[1,3,6];
     real[int] d = a.diag ; // get the diag of full matrix (no copy)
     real[int] dI= d(I); // init a array from renumbering array
     real[int] c= a(:,1)(I); // init a array from renumbering array
     real[int] aa= a.asarray; //  view full the matrice  as an array (no copy)
     a(2:5,3:7).diag= 200;
     a.diag += 100;
    
  • adding of a global variable lockOrientation to allows the building of mesh without checking the orientation elements (AF)
  • add plugin tool to build matrix edge/P1 with sign mat_edgeP1 (FH)
  • new examples diffusion-2d-mg.edp and helmholtz-2d-mg.edp showing how to use user-defined coarse corrections
  • support for nonzero scalars in PETSc block matrices
  • simpler constructor for sequential HPDDM matrices (no need for the restriction array and the partition of unity)
  • array of Mat and schwarz types
  • add mpi meshS (serialize object)

Changed

  • correct mistake in mpirank in case of broadcast with comm (thank tp PHT)
  • update fftw to v3.3.8 and openblas v0.3.6
  • in movemesh23 correct the argument label -> region to change label
  • new implementation for the moving mesh functions, new arguments: boolean cleanmesh, removemultiple, rebuildborder
  • new PETSc version 3.12
  • templatize movemesh, setMesh functions
  • add conditional tests in make check

Fixed

  • spurious output in PARDISO
  • fix problem in ffglut (AF)
  • detect hdf5 and gsl if no enable-download

Docker

Assets 6
Oct 15, 2019
pass to version 4.4)2
Aug 30, 2019
correct error in check size of A=0; when A is sparse matrix to set al…
…l coef =0. (trap in sparse-matrix.edp)

@sgarnotel sgarnotel released this Aug 28, 2019 · 1302 commits to master since this release

Warning: this is an automatic release. If you encounter some trouble with packages, post a message in the forum

Added

  • interface to TSSolve, DAE/ODE solvers from PETSc
  • interface to TaoSolve, Toolkit for Advance Optimization from PETSc
  • simpler constructor for sequential PETSc matrices (no need for the restriction array and the partition of unity)
  • some unit tests

Changed

  • PETSc version 3.11.3
  • replaced custom implementations (RNM::real, RNM::norm2, and Fem2D::norm) by C++11 functions
  • API of the macro plotMPI
  • switched to inexact coarse operators in HPDDM by default
  • RHS and solution vectors permuted in IterativeMethod and DDM
  • .mesh are now saved using version 2 (which stores floating-point scalars in double precision)

Removed

  • legacy linear solver interfaces using the old matrix type
  • dot products using CBLAS because of errors at link time
  • Newtow function (bad name)

Fixed

  • assertion failure with some 3D meshes when doing trunc(Th, true) (thanks to F. Feppon)
  • compile error when plotting arrays of vectorial functions
Assets 4
Jul 3, 2019
correct missing with new petsc prefix in 3rdparty/ff-petsc/Makefile
pass to v4.3-1
You can’t perform that action at this time.