You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: source/introduction/new-features.rst
+265Lines changed: 265 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -63,3 +63,268 @@ Boundary Element Method
63
63
64
64
Allows to define and solve a 2d/3d BEM formulation and rebuild the associated potential.
65
65
The document is in construction.
66
+
67
+
Version 4.6: new features
68
+
=========================
69
+
70
+
* Added
71
+
- new search algorithm for the element containing a point (more safe) in mesh of type mesh3, meshS, or meshL.
72
+
- new function `hasType` to know if a PETSc component has been installed, e.g., `hasType("PC", "hypre")`
73
+
- eigenvalue problems on linear elements, cf. `examples/eigen/LapEigen1DBeltrami.edp` or `examples/hpddm/laplace-beltrami-3d-line-SLEPc.edp`
74
+
- `--download-cmake` in PETSc configure if there is no CMake available
75
+
- flags `--with-[slepc|slepccomplex]-include` and `--with-[slepc|slepccomplex]-ldflags` for when SLEPc has been built outside of FreeFEM or PETSc
76
+
- interface to `KSPSetResidualHistory` and `KSPGetIterationNumber`
77
+
- interface to `mpiWaitAll`
78
+
- new function extract, allows to build a curve mesh from a 2d mesh (can extract a labeled boundary, apply a geometric transformation)
79
+
- ffglut can plot a vectorial FE function in surface 3d
80
+
- distributed ParMmg interface, cf. `examples/hpddm/distributed-parmmg.edp` or `examples/hpddm/laplace-adapt-dist-3d-PETSc.edp`
81
+
- new parallel interpolator on non-matching meshes, cf. `examples/hpddm/transfer.edp`
82
+
- ability to solve problems in single precision or with 64 bit integers
83
+
- tool to read data form vtk file only in 3d (cf. plugin iovtk a first example `examples/plugin/iovtk.edp`)
84
+
- tool to read/wrile ply file of meshL, mesh3, MeshS : Polygon File Format / Stanford Triangle Format do `load "ioply"`
85
+
see `examples//3dSurf/operatorsOnMeshS.edp`
86
+
87
+
* Changed
88
+
- new `tgv` values: -10 => zero row, -20 => zero row/column
89
+
- Windows binary now shipped with PETSc/SLEPc
90
+
- BEM examples are now in `examples/mpi`
91
+
- plot border type is now in 3d (border 2d and 3d)
92
+
- PETSc version 3.13.0
93
+
94
+
* Fixed
95
+
- `--enable-download_package` may now be used to download a single package, e.g., `--enable-download_metis`
96
+
- compilation of PETSc under Windows
97
+
- compilation of plugins when using static libraries
98
+
- correct detection problem in FE type when use a vectorial FE
99
+
- macro concatenation with spaces in arguments
100
+
- correct bug in `plugin/seq/Schur-Complement.cpp`
101
+
- correct ambiguity bug in `plugin/seq/bfstream.cpp` (reading real or integer)
102
+
- compilation of plugin libff-mmap-semaphore.c under windows
103
+
104
+
Version 4.7: new features
105
+
=========================
106
+
107
+
* Added
108
+
109
+
- new way to build matrix between 2d Finite element 2d and Curve finite element to do mortar (Thank to Axel ) , see first example `examples/tutorial/mortar-DN-4-v4.5.edp`
110
+
- 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 compatible to exterior normal.
111
+
- add `Tl` tangent vector in R^3 on meshL (tangent vector of the line/curve) of current point
112
+
- compile ffmaster / ffslave example under windows (thanks to johann@ifado.de)
113
+
- Boolean parameter `spiltpbedge` in `buildmesh` to split in to edge with two boundary vertices
114
+
- interface to PETSc DMPlex, see `examples/hpddm/DMPlex-PETSc.edp`
115
+
- function `MatDestroy`
116
+
- 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`
117
+
- 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`
118
+
- preliminary interface to `NEPSolve` from SLEPc to solve nonlinear eigenvalue problems, see `examples/hpddm/nonlinear-2d-SLEPc-complex.edp`
119
+
- `transpose` parameter when constructing a `Mat` for defining a matrix-free transposed operation
120
+
- interface to `PetscMemoryGetCurrentUsage`
121
+
- add P2b, RT0, RT1 surface FE (P2bS, RT0S, RT1S))
122
+
- add operator interpolate (2d->3d surface)
123
+
- 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
124
+
- function `MatLoad` to load a PETSc `Mat` from disk, see `examples/hpddm/MatLoad-PETSc.edp`
125
+
- possibility to assemble a symmetric `HMatrix<complex>` and to densify a `HMatrix<complex>` into a `Mat<complex>`
126
+
127
+
* Changed
128
+
- moved Htool to its new GitHub location
129
+
- ScaLAPACK and MUMPS are not compiled by PETSc anymore if there is no Fortran compiler
130
+
- 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
131
+
- PETSc version 3.13.5
132
+
- force `--with-cudac=0` in `make petsc-slepc`, see https://github.com/FreeFem/FreeFem-sources/issues/141
133
+
- change DSL keyword P1dc3dL->P1dcL and P1dc3dS->P1dcS
134
+
- rename `view`, `hasType`, `changeSchur` to respectively `ObjectView`, `HasType`, and `ChangeSchur`
135
+
136
+
* Deprecated
137
+
- rename `changeNumbering`, `globalNumbering`, `originalNumbering`, `changeOperator`, `destroyRecycling`, and `attachCoarseOperator` to respectively `ChangeNumbering`, `GlobalNumbering`, `OriginalNumbering`, `ChangeOperator`, `DestroyRecycling`, and `AttachCoarseOperator`
138
+
- `Nt` the normal vector of the current (wrong on meshL) use `Ns` or `Tl`
139
+
* Removed
140
+
- `augmentation` routine from the PETSc plugin
141
+
- `MPIF77` variable
142
+
143
+
* Fixed
144
+
- lot of mistake in MeshL element add a example o check lot of thing `tutomesh1d.edp`
145
+
- fixed problem of change of mesh when rebuild 2d mesh with buildmesh, .... (Thank to P. Jovilet to points this problem)
146
+
- missing METIS library when using SuiteSparse compiled by PETSc
147
+
- missing `-fno-stack-protector` when building PETSc on Windows, see https://community.freefem.org/t/error-loading-complex-petsc-slepc-library/370
148
+
- fixed ffglut for the plotting of FE array solution
149
+
- fixed ffglut bug on MacOS Catalina , draw inn only half windows screen (Apple Bug ???)
150
+
- correct P0VF finite element
151
+
- `abs` function of array
152
+
153
+
Version [4.7-1]: new features
154
+
=========================
155
+
156
+
* Changed
157
+
- change the language definition to use type as a construction function with named arguments for bem plugin
158
+
- PETSc version 3.14.0
159
+
- ARPACK compiled by SLEPc
160
+
- Mmg version 5.5.0
161
+
- -std=c++14 instead of -std=c++11 when possible
162
+
163
+
* Removed
164
+
- plugins thresholdings, symmetrizeCSR, and fflapack and associed example
165
+
166
+
* Fixed
167
+
- problem compilation with gfortran-10 of arpack and mumps (add -fallow-argument-mismatch flags)
168
+
169
+
170
+
Version 4.8: new features
171
+
=========================
172
+
173
+
* Added
174
+
- Bilaplacian example using Morley FE with PETSc, see `examples/hpddm/bilaplacian-2d-PETSc.edp`
175
+
- Oseen problem preconditioned by PCD, see `examples/hpddm/oseen-2d-PETSc.edp`
176
+
- SLEPc polynomial eigenvalue solver `PEPSolve()`
177
+
- add trivial example to check periodic boundary condition on meshS , meshL , mesh3
0 commit comments