CHANGELOG.md 24.7 KB
Newer Older
Dave Moxey's avatar
Dave Moxey committed
1 2 3
Changelog
=========

Julian Marcon's avatar
Julian Marcon committed
4 5
v4.5.0
------
6

Julian Marcon's avatar
Julian Marcon committed
7
**NekMesh**:
Michael Turner's avatar
Michael Turner committed
8

Julian Marcon's avatar
Julian Marcon committed
9
- Add periodic boundary condition meshing in 2D (!733)
Julian Marcon's avatar
Julian Marcon committed
10
- Adjust boundary layer thickness in corners in 2D (!739)
's avatar
committed
11
- Add feature to read basic 2D geo files as CAD (!731)
Julian Marcon's avatar
Julian Marcon committed
12

Chris Cantwell's avatar
Chris Cantwell committed
13 14 15
**Documentation**:
- Added the developer-guide repository as a submodule (!751)

Dave Moxey's avatar
Dave Moxey committed
16 17
v4.4.0
------
Dave Moxey's avatar
Dave Moxey committed
18
**Library**:
Dave Moxey's avatar
Dave Moxey committed
19 20
- Add support for variable polynomial order for 3D simulations with continuous
  Galerkin discretisation (!604)
Dave Moxey's avatar
Dave Moxey committed
21 22
- Bump version of gsmpi to suppress autotuning output unless `--verbose` is
  specified (!652)
Dave Moxey's avatar
Dave Moxey committed
23 24
- Add support for variable polynomial order with periodic boundary conditions
  (!658)
Dave Moxey's avatar
Dave Moxey committed
25 26
- Statistics are now printed for lowest level of multi-level static condensation
  (!656)
27 28
- Sped up interpolataion from pts files and fixed parallel pts import (!584)
- Increased required boost version to 1.56.0 (!584)
Dave Moxey's avatar
Dave Moxey committed
29 30
- New FieldUtils library allows support for most `FieldConvert` post-processing
  operations during simulation using a new filter (!589)
Dave Moxey's avatar
Dave Moxey committed
31
- Adjust CMake dependencies to reduce compile time (!671)
Dave Moxey's avatar
Dave Moxey committed
32
- Homogeneous1D dealiasing improvements (!622)
33 34 35
- Add support for HDF5 as an alternative output to XML-based output, including
  refactoring of FieldIO, improvements to MPI interface and added communicators
  to boundary conditions (!615)
Chris Cantwell's avatar
Chris Cantwell committed
36 37
- Allow expansions to be loaded directly from field file (!617)
- New options for load balancing (DOF or BOUNDARY) in mesh partitioner (!617)
Dave Moxey's avatar
Dave Moxey committed
38
- Rework nodal utilities to support nodal prismatic elements (!660)
Kilian Lackhove's avatar
Kilian Lackhove committed
39
- Update Body/Field forces at each timestep (!665)
40 41
- Update nodalutil to include quad and hex elements and introduce SPI nodal
  points (!696)
Dave Moxey's avatar
Dave Moxey committed
42 43
- Add ability to restart time-averaging and Reynolds stresses from checkpoint
  file (!678)
Dave Moxey's avatar
Dave Moxey committed
44 45
- Extend ExtractDataToCoeffs to support interpolation between basis types for
  quads and hexahedra (!682)
Kilian Lackhove's avatar
Kilian Lackhove committed
46 47 48
- Enabled MUMPS support in PETSc if a Fortran compiler was found and added 3D
  support to the Helmholtz smoother used e.g. in FieldConverts C0Projection
  module (!714)
Douglas Serson's avatar
Douglas Serson committed
49 50
- Fix bug in `Vmath::FillWhiteNoise` which caused `ForcingNoise` to have
  a repeated pattern (!718)
Chris Cantwell's avatar
Chris Cantwell committed
51
- Fix bug in the calculation of the RHS magnitude in CG solver (!721)
Dave Moxey's avatar
Dave Moxey committed
52
- Fix bug in MPI detection for recent CMake on OS X (!725)
Dave Moxey's avatar
Dave Moxey committed
53
- Fix bug in CMake Homebrew and MacPorts detection for OS X (!729)
Douglas Serson's avatar
Douglas Serson committed
54
- Fix bug in FieldUtils when using half mode expansions (!734)
55
- Do not read the same fld/pts files again for every variable (!670)
Dave Moxey's avatar
Dave Moxey committed
56
- Fix bug in CMake PETSc detection for Ubuntu 16.04/Debian 9 (!735)
Dave Moxey's avatar
Dave Moxey committed
57

Dave Moxey's avatar
Dave Moxey committed
58 59 60
**ADRSolver:**
- Add a projection equation system for C^0 projections (!675)

Kilian Lackhove's avatar
Kilian Lackhove committed
61 62 63 64
**APESolver:**
- Use a continuous basefield projection and revert to constant c formulation (!664)
- Added ability to compute CFL number (!664)
- Output Sourceterm (!664)
Kilian Lackhove's avatar
Kilian Lackhove committed
65
- Use the Forcing framework to define source terms (!665)
Dave Moxey's avatar
Dave Moxey committed
66

Dave Moxey's avatar
Dave Moxey committed
67 68
**IncNavierStokesSolver:**
- Add ability to simulate additional scalar fields (!624)
Dave Moxey's avatar
Dave Moxey committed
69
- Improve performance when using homogeneous dealiasing (!622)
Douglas Serson's avatar
Douglas Serson committed
70
- Fix linearised advection for full 3D cases (!708)
71 72
- Added a weak pressure formulation following Guermond & Shen (!713)
- Added a convective like outflow boundary condition from Dong (!713)
Spencer Sherwin's avatar
Spencer Sherwin committed
73
- Added the ability to specifiy Womersley boundary conditions for pulsatile flow (!472)
Dave Moxey's avatar
Dave Moxey committed
74

Chris Cantwell's avatar
Chris Cantwell committed
75 76
**CardiacEPSolver:**
- Added a Python translator utility to generate cell models from CellML (!723)
Dave Moxey's avatar
Dave Moxey committed
77

Dave Moxey's avatar
Dave Moxey committed
78 79
**FieldConvert:**
- Allow equi-spaced output for 1D and 2DH1D fields (!613)
80
- Update quality metric to include scaled Jacobian output (!695)
Chris Cantwell's avatar
Chris Cantwell committed
81
- Allow multiple XML files to be specified in InterpField module (!705)
Dave Moxey's avatar
Dave Moxey committed
82
- Fix issues with isocontour module (!719)
Spencer Sherwin's avatar
Spencer Sherwin committed
83
- Fix issue with interpolator routine (!746)
Dave Moxey's avatar
Dave Moxey committed
84

85 86
**NekMesh:**
- Modify curve module to allow for spline input (!628)
87
- Add STL surface writer module (!668)
88 89
- New module for inserting an alternate high-order surface into the working
  mesh (!669)
Dave Moxey's avatar
Dave Moxey committed
90
- Add curve projection routines to CAD system (!697)
Michael Turner's avatar
Michael Turner committed
91 92
- Extensive clean-up of NekMeshUtils/MeshElements and extension of makeorder to
  consider CAD information (!698)
Dave Moxey's avatar
Dave Moxey committed
93
- Improvements to mesh linearisation module (!659)
Dave Moxey's avatar
Dave Moxey committed
94
- Add support for Gmsh high-order output (!679)
Dave Moxey's avatar
Dave Moxey committed
95
- Move CAD classes to factory format (!676)
Michael Turner's avatar
Michael Turner committed
96 97
- Add module to check topology of the mesh along with boundary connectivity
  to detect problems such as hanging nodes (!691)
Dave Moxey's avatar
Dave Moxey committed
98
- Add option to `linearise` module to linearise only prisms (!688)
Dave Moxey's avatar
Dave Moxey committed
99
- Add reader for Nek5000 mesh files (!680)
Michael Turner's avatar
Michael Turner committed
100
- Add option to `linearise` to use element quality (!690)
Michael Turner's avatar
Michael Turner committed
101 102
- Add flag to `insertsurface` process for non-conforming geometries (!700)
- Bug fix to get two meshgen regression tests working (!700)
103
- Remove libANN in deference to boost::geometry (!703)
Dave Moxey's avatar
Dave Moxey committed
104
- Refactor library to use NekMesh modules for CAD generation (!704)
Michael Turner's avatar
Michael Turner committed
105
- Add `varopti` process module to optimise meshes (!711)
's avatar
committed
106 107 108
- Add a mesh extract option to the linearise module to visualise the result
  (!712)
- 2D to 3D mesh extrusion module (!715)
Julian Marcon's avatar
Julian Marcon committed
109
- Add new two-dimensional mesher from NACA code or step file (!720)
Dave Moxey's avatar
Dave Moxey committed
110
- Add basic gmsh cad (.geo) reader to the meshing system (!731)
Michael Turner's avatar
Michael Turner committed
111
- Fix inverted boundary layer in 2D (!736)
Julian Marcon's avatar
Tidy.  
Julian Marcon committed
112
- More sensible element sizing with boundary layers in 2D (!736)
Michael Turner's avatar
Michael Turner committed
113 114 115
- Change variable names in mcf file to make more sense (!736)
- Fix issues in varopti module so that in can be compiled without meshgen on
  (!736)
Michael Turner's avatar
Michael Turner committed
116
- Replace LAPACK Eigenvalue calculation with handwritten function in
Jan Eichstaedt's avatar
Jan Eichstaedt committed
117
  varopti (!738)
Michael Turner's avatar
Michael Turner committed
118
- Improved node-colouring algorithm for better load-balancing
Jan Eichstaedt's avatar
Jan Eichstaedt committed
119 120 121
  in varopti (!738)
- Simplified calculation of the energy functional in varopti for improved
  performance (!738)
122

Dave Moxey's avatar
Dave Moxey committed
123
**FieldConvert:**
Dave Moxey's avatar
Dave Moxey committed
124 125
- Move all modules to a new library, FieldUtils, to support post-processing
  during simulations (!589)
Dave Moxey's avatar
Dave Moxey committed
126
- Add module to stretch homogeneous direction (!609)
Dave Moxey's avatar
Dave Moxey committed
127
- Add module to add composite ID of elements as a field (!674)
Dave Moxey's avatar
Dave Moxey committed
128
- Add reader for Nek5000 field files (!680)
Dave Moxey's avatar
Dave Moxey committed
129

Chris Cantwell's avatar
Chris Cantwell committed
130 131
**Tester:**
- Fix output not displayed on segfault or system error (!745)
Dave Moxey's avatar
Dave Moxey committed
132

Chris Cantwell's avatar
Chris Cantwell committed
133 134
v4.3.5
------
Douglas Serson's avatar
Douglas Serson committed
135
**Library:**
Douglas Serson's avatar
Douglas Serson committed
136
- Fix bug in DG with hybrid meshes (!694)
Douglas Serson's avatar
Douglas Serson committed
137
- Fix issue with parallel output (!699)
Dave Moxey's avatar
Dave Moxey committed
138
- Fix performance issue with iterative full solver (!693)
Chris Cantwell's avatar
Chris Cantwell committed
139
- Enforced precision on history point output (!706)
Douglas Serson's avatar
Douglas Serson committed
140

Chris Cantwell's avatar
Chris Cantwell committed
141 142 143
**Documentation**
- Update build instructions in user guide for Windows (!692)

Chris Cantwell's avatar
Chris Cantwell committed
144 145 146
**Tester**
- Fix bug in tester when no parameters specified for test executable (!701)

Dave Moxey's avatar
Dave Moxey committed
147 148 149
v4.3.4
------
**Library:**
Chris Cantwell's avatar
Chris Cantwell committed
150 151
- Fix performance issue with `v_ExtractDataToCoeffs` for post-processing of
  large simulations (!672)
Chris Cantwell's avatar
Chris Cantwell committed
152 153
- Added additional assertions to ensure homogeneous simulations have an even
  number of planes per process (!666)
Douglas Serson's avatar
Douglas Serson committed
154
- Fix compilation with NEKTAR_USE_MESHGEN option
Chris Cantwell's avatar
Chris Cantwell committed
155
- Fix IterativeFull solver in parallel (!685)
Douglas Serson's avatar
Douglas Serson committed
156
- Fix error message for missing fld file (!689)
Dave Moxey's avatar
Dave Moxey committed
157

Douglas Serson's avatar
Douglas Serson committed
158 159 160
**IncNavierStokesSolver:**
- Fix 2nd order time-integration for VCSMapping (!687)

161 162 163 164 165 166
v4.3.4
------
**Library:**
- Fix performance issue with `v_ExtractDataToCoeffs` for post-processing of large
  simulations (!672)

Douglas Serson's avatar
Douglas Serson committed
167 168
v4.3.3
------
Dave Moxey's avatar
Dave Moxey committed
169
**Library**:
Kilian Lackhove's avatar
Kilian Lackhove committed
170
- Auto-detect a shared filesystem and removed --shared-filesystem option (!654)
Dave Moxey's avatar
Dave Moxey committed
171 172
- Fix filters when using adaptive driver to avoid output being overwritten after
  each adaptive update (!588)
Dave Moxey's avatar
Dave Moxey committed
173
- Minor fix to suppress Xxt output unless `--verbose` is specified (!642)
Michael Turner's avatar
Michael Turner committed
174
- Fix of DirectFull solver in case where only Neumann boundary conditions
Martin Vymazal's avatar
Martin Vymazal committed
175
  are imposed. (!655)
Dave Moxey's avatar
Dave Moxey committed
176

Dave Moxey's avatar
Dave Moxey committed
177 178
**FieldConvert**:
- Fix to avoid repeated import of field file (!649)
Dave Moxey's avatar
Dave Moxey committed
179
- Fix issue with C^0 projection (!644)
Chris Cantwell's avatar
Chris Cantwell committed
180
- Fix verbose output when using --procid (!648)
Dave Moxey's avatar
Dave Moxey committed
181

Dave Moxey's avatar
Dave Moxey committed
182 183
**NekMesh:**
- Fix namespace issue in Star-CCM+ input header in NekMesh (!661)
Dave Moxey's avatar
Dave Moxey committed
184

Dave Moxey's avatar
Dave Moxey committed
185 186
**CompressibleFlowSolver**:
- Fix issue with residual output (!647)
187
- Issues with 1D Euler solver fixed (!565)
Dave Moxey's avatar
Dave Moxey committed
188
- Fix deadlocking issue with boundary conditions (!657)
Dave Moxey's avatar
Dave Moxey committed
189

Douglas Serson's avatar
Douglas Serson committed
190 191
**Packaging**:
- Fix NekMesh dependencies for DEB package (!650)
192
- Fix PETSc build on newer linux distributions (!646)
Douglas Serson's avatar
Douglas Serson committed
193

Chris Cantwell's avatar
Chris Cantwell committed
194 195 196
v4.3.2
------
**Library**:
Dave Moxey's avatar
Dave Moxey committed
197
- Add small optimisation for DriverAdaptive (!618)
Chris Cantwell's avatar
Chris Cantwell committed
198
- Updated FFTW build to use the compiler used for building Nektar++ (!629)
Chris Cantwell's avatar
Chris Cantwell committed
199
- Fix numbering bug in periodic boundary conditions (!631)
Douglas Serson's avatar
Douglas Serson committed
200
- Print error message for invalid equation also in release version (!634)
Chris Cantwell's avatar
Chris Cantwell committed
201 202
- HistoryPoints filter now uses closest plane to requested z-coordinate and
  output is produced in physical space (!621).
Dave Moxey's avatar
Dave Moxey committed
203 204
- Fix minor performance issue with time integration schemes (!632)
- Fix FilterCheckpoint filter to be consistent with `IO_CheckSteps` (!633)
Chris Cantwell's avatar
Chris Cantwell committed
205
- Fix CMake configuration for building on Windows 10 with VS 2015 (!641)
Dave Moxey's avatar
Dave Moxey committed
206
- Fix `IO_CheckSteps` to avoid missing first checkpoint (!639)
207 208
- Fix bug in iterative solver where only root process would ASSERT when
  exceeding the maximum number of iterations (!636)
Chris Cantwell's avatar
Chris Cantwell committed
209

Chris Cantwell's avatar
Chris Cantwell committed
210 211
**FieldConvert**:
- Fix appearence of duplicate messages when running in parallel (!626)
Dave Moxey's avatar
Dave Moxey committed
212
- Fix issue with efficiency when using large number of 3DH1D planes (!627)
Dave Moxey's avatar
Dave Moxey committed
213
- Add module for combining average fields (!620)
Chris Cantwell's avatar
Chris Cantwell committed
214
- Fix wall shear stress processing module for parallel execution (!635)
Chris Cantwell's avatar
Chris Cantwell committed
215

Dave Moxey's avatar
Dave Moxey committed
216 217 218
**Packaging**:
- Fixes for DEB package dependencies (!630)

Dave Moxey's avatar
Dave Moxey committed
219 220 221 222 223
v4.3.1
------
**Library**:
- Add `THIRDPARTY_USE_SSL` option to disable use of SSL on systems where CMake
  is not compiled with SSL support. (!602)
224
- Fixed a number of documentation issues (!586, !593, !596)
Chris Cantwell's avatar
Chris Cantwell committed
225
- Fix Homogeneous transform when unshuffling is not used. (!599)
Chris Cantwell's avatar
Chris Cantwell committed
226
- Fix namespace pollution in library header files. (!601)
Dave Moxey's avatar
Dave Moxey committed
227
- Fix issue with METIS compilation on clang 7.3 (!603)
Dave Moxey's avatar
Dave Moxey committed
228
- Fix issue with heterogeneous quadrilaterals (!607)
Chris Cantwell's avatar
Chris Cantwell committed
229 230
- Fix bug in modified Arnoldi algorithm causing convergence to be reported when
  number of vectors is less than `nvec` (!608)
Chris Cantwell's avatar
Chris Cantwell committed
231
- Fix uninitialised array bug in AssemblyMap (!598)
Dave Moxey's avatar
Dave Moxey committed
232
- Fix issue with LAPACK call in eigenvalue calculation (!610)
Dave Moxey's avatar
Dave Moxey committed
233
- Fix FieldConvert processing of partitions in serial (!612)
Dave Moxey's avatar
Dave Moxey committed
234 235
- Fix use of multi-level static condensation in parallel with periodic
  boundary conditions (!614)
Chris Cantwell's avatar
Chris Cantwell committed
236
- Fix NaN detection to work in parallel (!605)
Chris Cantwell's avatar
Chris Cantwell committed
237 238
- Add additional constructor to ContField3DHomogeneous1D for FieldConvert
  extract module. (!590)
Dave Moxey's avatar
Dave Moxey committed
239

Chris Cantwell's avatar
Chris Cantwell committed
240 241 242
**NekMesh**:
- Fix incorrect link directory on CCMIO library.

Chris Cantwell's avatar
Chris Cantwell committed
243 244 245 246
**FieldConvert**:
- Fix to FLD input to update the field definitions always, not just when a range
  is specified. (!611)

Chris Cantwell's avatar
Chris Cantwell committed
247 248 249 250
**Tester**:
- Remove requirement for executable to be specified in .tst file if it is
  overridden on the command-line (!595)

Chris Cantwell's avatar
Chris Cantwell committed
251 252 253
**Packaging**:
- Fix dependency resolution on generation of DEB packages. (!616)

Dave Moxey's avatar
Dave Moxey committed
254 255
v4.3.0
------
256
**Library:**
Dave Moxey's avatar
Dave Moxey committed
257
- Changed default XML format to compress mesh data (!533, !547)
258
- Various fixes for 3D homogeneous post-processing (!531, !529, !528, !526, !521)
Chris Cantwell's avatar
Chris Cantwell committed
259
- Fix boundary condition imposition for 3D homogeneous 2D HelmSolve (!545)
260
- Fix range with variable p option (!522)
261
- Fix bug with hexahedra of heterogeneous order (!520) and reading files (!522)
262 263
- Fix history point output formatting (!518)
- Fix for OS X 10.11 (!512)
264
- Fix `HexGeom::v_GetDir` to support heterogeneous basis functions (!520)
265 266 267
- Added new `NekMeshUtils` library to support new `NekMesh` executable and
  associated CAD routines. Old CAD wrappers in LibUtilities now moved to
  `NekMeshUtils` (!527)
268 269 270
- Fix initialisation bug in ExpList2DH1D and ExpListHomogeneous2D (!528, !529)
- Fix bug in ExpList1D which may lead to invalid .vtu files (!531)
- Make `GetBoundaryToElmtMap` consistent for 3DH1D (!526)
Dave Moxey's avatar
Dave Moxey committed
271 272
- Add support for PETSc matrix shell to use Nektar++ operations/preconditioners
  (!537)
Douglas Serson's avatar
Douglas Serson committed
273
- Fix bug with initial conditions of CG simulations using variable P (!543)
Douglas Serson's avatar
Douglas Serson committed
274
- Fix bug in 3DH2D with non-zero Dirichlet boundary conditions (!545)
Michael Turner's avatar
Michael Turner committed
275
- Added in a method to convert equispaced interpolated points back to
276
  coefficients which requires the introduction of a new StdRegions matrix.(!561)
Chris Cantwell's avatar
Chris Cantwell committed
277
- Empty XML tags which would override non-empty XML tags are now ignored (!581)
278
- Add contribution guide (!551)
Douglas Serson's avatar
Douglas Serson committed
279
- Add a filter to calculate exponential moving averages (!566)
280 281 282

**APESolver:**
- Fix restarting from checkpoint file (!517)
Dave Moxey's avatar
Dave Moxey committed
283

Chris Cantwell's avatar
Chris Cantwell committed
284 285
**IncNavierStokesSolver**
- Fix floquet stability analysis for HalfMode case (!536)
Douglas Serson's avatar
Douglas Serson committed
286
- Add a filter to calculate Reynolds stresses (!566)
Chris Cantwell's avatar
Chris Cantwell committed
287

288
**FieldConvert:**
Dave Moxey's avatar
Dave Moxey committed
289
- Extended surface distance module to support hexahedra and quads (!524)
290
- Small fixes in interpolation routine (!515)
291 292
- Add support for surface extraction in 3DH1D case (!521)
- Add support for isocontour extraction for 3DH1D (!525)
293
- Add process module to calculate high-order mesh quality metric (!527).
Douglas Serson's avatar
Douglas Serson committed
294
- Add module to extract one of the planes of 3DH1D (!542)
295 296 297
- Add module to enable mean mode of 3DH1D to be extracted (!530)
- Fix bug in C^0 projection (!541))
- Add command line option to set number of homogeneous planes (!540)
298
- Add module to project set of points to a fld file(!561)
299 300
- Add support for interpolating to a box of points and fix ability to run
  interppointstofld module in parallel when using a plane or box option (!561)
Chris Cantwell's avatar
Chris Cantwell committed
301
- Add option to output equi-spaced points in VTU format (!550)
Spencer Sherwin's avatar
Spencer Sherwin committed
302
- Add module innerproduct (!568)
303
- Add command line option of `--part-only` and `--part-only-overlapping` (!569)
304

Dave Moxey's avatar
Dave Moxey committed
305 306 307
**NekMesh:**
- `MeshConvert` is now renamed to `NekMesh` to reflect new mesh generation
  functionality (!527).
308 309 310
- Enable face curvature inside core MeshConvert objects (!511)
- Add linearise processing module to remove all curvature from high order
  elements (!509)
Dave Moxey's avatar
Dave Moxey committed
311

312 313 314
**Documentation:**
- Added git submodule for including Nektar++ tutorials in the source tree (!507)

Dave Moxey's avatar
Dave Moxey committed
315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333
v4.2.0
------

**Library:**
- Add Runge-Kutta SSP schemes for 2nd/3rd order using keys `RungeKutta2_SSP` and
  `RungeKutta3_SSP`. `ClassicalRungeKutta4` is now called `RungeKutta4`. (!481)
- Add rudimentary support for 3D CAD models using OpenCascade - work in progress
  (!486)
- Allow filters to evaluate expressions in their parameter definitions (!489)
- Fix block preconditioner to work with periodic boundary conditions (!420)
- Dump a backtrace when crash occurs and Nektar++ is compiled in FullDebug mode
  (!495)
- Stop the execution of a time-dependent solver if NaN is detected in the
  solution field (!496)
- Fixes to improve robustness of interpolation routines (!499)
- Allow solvers to use multi-level static condensation with Xxt, most useful
  when running a 3DH1D simulation (!502)

**IncNavierStokesSolver:**
334 335
- A range of fixes for the coupled stability solver, which now works in parallel
  (!508)
Dave Moxey's avatar
Dave Moxey committed
336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421

**MeshConvert:**
- Add module to extract prismatic boundary layer elements from mixed prism-tet
  mesh (!493).

**FieldConvert:**
- Add a processing module to calculate height of an element connected to a
  surface, allowing for calculation of y plus values (!488)
- Fixes for equispaced output (!510)


v4.1.0
------

**Library:**
- Add support for interpolating point data from .pts files (!433)
- Fixes for curvilinear element normals (!443)
- Fix consistency issues between FFT and MVM approaches for homogeneous
  expansions (!444)
- Fix a bug in Tecplot output (!445)
- Fix a bug with PETSc and MPI_Finalize (!456)
- Fix bugs with mesh partitioning (!449, !480)
- Fix a bug with non-symmetric SVV parameters for curvilinear elements (!451)
- Fix detection of Intel MKL 2013/2015 (453)
- Fix linearised stability solver in parallel (!454)
- Add a filter for 1D energy spectra (!457)
- Add an incomplete developer guide containing most information from the wiki
  (!459)
- Change user defined boundary conditions to remove dependency on enumerator
  inside SpatialDomains (!460)
- Add a new collections library for optimised evaluation of operators (!461)
- Change minimum version of boost to 1.52.
- Add initial multithreading support (!463)
- Fix third-party boost compilation on OS X (!467)
- Disable some regression tests on 32-bit systems (!468)
- Fix memory issues inside collections (!473)
- Fix collections autotuning (!476)
- Fix VtkToPng utility (!477)
- Add PulseWaveSolver to packaging (!478)
- Fix bug in iterative static condensation solver (!483)
- Fix zlib install path on OS X (!484)
- Fix documentation HTML styling for user and developer guide (!485)
- Add fixes to support native Nektar++ extension in VisIt visulisation software
  (!490)
- Fix warnings on OS X (!491)

**CardiacEPSolver:**
- Fixes for stimuli (!442, !446), conductivity (!441), cell restarts (!458)
- Add a new filter for outputting cell states at specific points over time (!465)

**Linear elastic solver (new):**
- Add solver for linear elasticity equations (!400)

**IncNavierStokesSolver:**
- Add support for moving bodies (!344, !448)
- Fixes for modal energy filter (!427)
- Fix import of mesh file in the Adaptive SFD driver (!440) and other general
  fixes (!452)
- Documentation for high order pressure and outflow boundary conditions (!447)
- Update examples to use correct forcing terms (!470)
- Fixes for half-mode stability (!471)
- Fix static initialisation problem in extrapolation classes (!492)

**CompressibleFlowSolver:**
- Add support for sponge region (!396)
- Add support for adiabiatic walls (!430)
- Add utility to generate boundary layer from similarity solution (!438)

**ShallowWaterSolver:**
- Added a DG solver for the Boussinesq equations of Peregrine (!431)

**APESolver:**
- Add support for variable speed of sound (!438)

**MeshConvert:**
- Fix Star file input for highly stretched elements (!455)
- Add Star input from binary format (!474)
- Tidy up files to align with FieldConvert (!479)

**FieldConvert:**
- Major re-organisation of modules, most post-processing utilities now available
  within FieldConvert (!475)

v4.0.1
------

422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462
**Library:**
- Change hybrid parallelisation to use command line options (!368)
- Add support for multi-variable functions in expression evaluator: new
  functions include rad and ang for polar coordinates (!375)
- Add more documentation (!376, !383)
- Various OS X (!377, !378, !382, !425), compiler warning (!432), documentation
  (!434) Windows 7 (!391, !407), CMake (!392, !415), packaging (!435, !436) and
  Intel compiler (!414, !416) fixes
- Refactor of CG and DG assembly maps (!380)
- Fixes for PETSc running in serial (!381, !420)
- Fixes for running Arnoldi solver in parallel (!384)
- Enable MPI tests on Cray machines such as ARCHER (!386)
- Fix issues with extracting face physical values (!393)
- Fix threshold filter (!395)
- HDG can now use block preconditioner (!397)
- Fix issue with singular vertices in parallel (!398)
- Timing executables now use `Timer` class from LibUtilities (!402)
- Fix manifold history points again (!410)
- Fix time output inside energy filter (!412)
- Fix GetExpIndex function (!417)
- Fixes to external project compilation (!419)
- Fixes from CPC paper review (!422)
- Fixes for scotch partitioner tests (!423)
- Fixes for ACML BLAS libraries (!424)
- Allow prepartitioned meshes to be used (!426)
- Enable variable names to be remapped inside files to different names in XML
  functions (!428)

**APESolver:**
- Fixes for tests (!404)
- Add support for advection classes (!408)

**CardiacEPSolver:**
- Add benchmark (!411)
- Fix cardiac exmplaes (!418)

**CompressibleFlowSolver:**
- Add filter for kinetic energy/enstrophy calculation (!388)

**FieldConvert:**
- Support equi-spaced output for simplex elements to reduce storage (!421)
Dave Moxey's avatar
Dave Moxey committed
463

464 465 466 467 468 469 470 471 472
**IncNavierStokesSolver:**
- Unify advection classes with those in `SolverUtils` (!403, !408)

**MeshConvert:**
- Boundary layer refinement now supports hexahedra (!390)
- Improve support for Gmsh high order elements (!401)
- Many fixes for face-interior curvature (!401)
- Add rudimentary test suite (!401)
- New module for imposing curvature based on a scalar function (!401)
Dave Moxey's avatar
Dave Moxey committed
473 474 475 476

v4.0.0
------

477 478 479 480 481 482 483 484 485 486 487 488 489
**Library:**
- Update boost to 1.55 (!289)
- Fix parallel history points on manifold (!298)
- Add support for scotch partitioner (!311)
- Fixes for thirdparty builds (!319, !330, !353)
- Fix CMake >= 3.0.0 warnings (!320)
- Add support for PETSc library and tidy up global system classes (!322)
- Fixes for 1D Helmholtz solver (!326)
- Fixes for history points (!327) and solver output (!331)
- Fix issue with mesh IDs that do not start from zero (!354)

**CardiacEPSolver:**
- Simplify support for global conductiity (!295)
Dave Moxey's avatar
Dave Moxey committed
490

491 492 493 494 495 496
**FieldConvert:**
- Fixes for parallel operation and interpolation of points (!351)

**IncNavierStokesSolver:**
- Fixes for sponge layer (!272)
- Fix setting of initial conditions (!298)
Dave Moxey's avatar
Dave Moxey committed
497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605

v3.4.0
------

**Library:**
- New parallel output format. Parallel files are now stored in directories which
  contain partition information. (!100, !102, !236, !242, !249, !256).
- gzip-compressed XML mesh files are now supported with extension .xml.gz (!116,
  !140, !186).
- HDG solvers now run in parallel and have post-processing utilities (!188,
  !230).
- Partitioning can be done only on root process if shared filesystem is
  present with use of `--shared-filesystem` command line option (!220, !250).
- A variety of preconditioners are now supported, including linear space and
  low-energy preconditioning (!148).
- Many changes to geometric factors storage and interpolation (!99, !197).
- Improvements to identification of invalid elements (!208, !227).
- Removed elemental storage to reduce memory consumption by 30-50% for large
  problems (!240).
- Various performance and design improvements for discontinuous formulation (!134).
- Periodic boundary conditions are supported in 3D for both continuous and
  discontinuous formulations (!139, !150, !152, !155, !196).
- Utilities added to mesh converter to help identify pairs of periodic faces
  (!214).
- Preconditioner support for periodic boundary conditions (!231, !239).
- New radiation boundary condition type (!74).
- Some solvers (compressible flow solver, advection-diffusion-reaction solver)
  now support dealiasing options (!78, !146, !167).
- BLAS and vectorisation performance improvements for static-condensed iterative
  solver (!86, !109).
- New driver to improve steady state convergence and add parallel support (!91,
  !235).
- Updated to METIS v5.1.0 (!97, !142, !189).
- Iterative solvers now use previous timestep (when available) to improve
  convergence speed (!106).
- Added CPU timing for timestep loop (!156).
- Added provenance information (date, time, code version, git revision, etc) to
  field file output (!179).
- Disabled long-running regression tests by default (!183).
- Support for command line arguments without parameters (!187).
- Added support for reading boundary conditions from files, and appropriate
  utilities in MeshConvert to extract surfaces (!226).
- Updated XXt and Gs libraries to latest version (!232).
- Fix singularity check for Poisson equations (!74, !154).
- Fixes for 2D Gauss points (!73, !149, !157).
- Fixes to parallel I/O (!77, !218, !264).
- Fixes for parallel implementation (!93, !107, !121, !169, !217, !245, !246).
- Fixes for normal calculation (!94, !135).
- Improved compilation techniques, particularly when compiler includes MPI
  automatically (!80, !82, !84, !85, !113, !114, !131, !141, !166, !210, !241).
- Updated zlib to v1.2.7 (!115).
- Fix for boost 1.5.3 compilation (!120).
- Most compiler warnings silenced with clang/gcc (!81, !92, !103, !123, !201,
  !243).
- Attempts to improve mesh partitioning/load balancing (!160, !170, !175).
- Fixes for Newton iteration to interpolate inside deformed elements (!216,
  !251).
- Fixed curved tetrahedron and hexahedron issue (!219, !248).
- Fixed reading of field files for tetrahedron (!228).
- Fixed uninitialised variable inside SessionrReader (!233).
- Various improvements to support use of Nektar++ externally (!111, !260, !261).
- Fixed base flow reading (!112).

**CardiacEPSolver:**
- Cardiac electrophysiology solver improvements (!87, !95, !96, !108, !119,
  !165, !173, !174, !199, !222).

**CompressibleFlowSolver:**
- Compressible Navier-Stokes equations are now available for both DG and FR
  discretisations (!110, !125, !128).
- Meshes with spatially varying p in both 2D and 3D are now supported (!158).
- Homogeneous Fourier extension is now supported (!180).
- Various fixes (!90, !98, !147, !172).

**DiffusionSolver (new):**
- Added small solver to demonstrate usage of higher library levels outside of
  EquationSystem (!225).

**IncNavierStokesSolver:**
- Major refactoring of time-integration classes (!181, !184).
- Summary information now generated via callbacks (!182).
- Implemented new generic forcing function classes (!194).
- Current time now written out in field files (!198).
- Major refactoring of incompressible Navier-Stokes solver to improve
  readability and performance (212, !213).
- Spectral vanishing viscosity for stabilisation (!101, !104, !211, !263).
- Added filter to compute aerodynamic forces on surfaces (!168, !203, !204).
- Added filter to compute kinetic energy and enstrophy (!207, !257).

**ShallowWaterSolver:**
- Various improvements/modernisations to shallow water solver (!190).

**Utilities:**
- VTK to PNG converter (!122)
- Added scalar gradient utility (!129, !252).
- Added utility to calculate Q-criterion field (!153).
- Added support to XmlToVtk to write Jacobian field (!223).
- Added utility to calculate wall shear stress (!224).
- Fixed vorticity calculator (!138).

**MeshConvert:**
- Added face-interior quadrature and 2D/3D manifold support to spherigon code
  (!130).
- Fixes for boundary layer refinement and prism-to-tetrahedron splitting (!137,
  !202, !206, !244).

**FieldConvert (new):**
- Added new FieldConvert utility which will eventually encompass most existing
  utilities (!255).