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

Dave Moxey's avatar
Dave Moxey committed
4 5
v4.4.0
------
Dave Moxey's avatar
Dave Moxey committed
6
**Library**:
Dave Moxey's avatar
Dave Moxey committed
7 8
- Add support for variable polynomial order for 3D simulations with continuous
  Galerkin discretisation (!604)
Dave Moxey's avatar
Dave Moxey committed
9 10
- Bump version of gsmpi to suppress autotuning output unless `--verbose` is
  specified (!652)
Dave Moxey's avatar
Dave Moxey committed
11 12
- Add support for variable polynomial order with periodic boundary conditions
  (!658)
Dave Moxey's avatar
Dave Moxey committed
13 14
- Statistics are now printed for lowest level of multi-level static condensation
  (!656)
15 16
- 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
17 18
- 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
19
- Adjust CMake dependencies to reduce compile time (!671)
Dave Moxey's avatar
Dave Moxey committed
20
- Homogeneous1D dealiasing improvements (!622)
21 22 23
- 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
24 25
- Allow expansions to be loaded directly from field file (!617)
- New options for load balancing (DOF or BOUNDARY) in mesh partitioner (!617)
Kilian Lackhove's avatar
Kilian Lackhove committed
26
- Update Body/Field forces at each timestep (!665)
Dave Moxey's avatar
Dave Moxey committed
27

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

Kilian Lackhove's avatar
Kilian Lackhove committed
31 32 33 34
**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
35
- Use the Forcing framework to define source terms (!665)
Dave Moxey's avatar
Dave Moxey committed
36

Dave Moxey's avatar
Dave Moxey committed
37 38
**IncNavierStokesSolver:**
- Add ability to simulate additional scalar fields (!624)
Dave Moxey's avatar
Dave Moxey committed
39
- Improve performance when using homogeneous dealiasing (!622)
Dave Moxey's avatar
Dave Moxey committed
40

Dave Moxey's avatar
Dave Moxey committed
41 42 43
**FieldConvert:**
- Allow equi-spaced output for 1D and 2DH1D fields (!613)

44 45
**NekMesh:**
- Modify curve module to allow for spline input (!628)
46
- Add STL surface writer module (!668)
47 48
- New module for inserting an alternate high-order surface into the working
  mesh (!669)
Dave Moxey's avatar
Dave Moxey committed
49
- Improvements to mesh linearisation module (!659)
Dave Moxey's avatar
Dave Moxey committed
50
- Add support for Gmsh high-order output (!679)
51

Dave Moxey's avatar
Dave Moxey committed
52
**FieldConvert:**
Dave Moxey's avatar
Dave Moxey committed
53 54
- Move all modules to a new library, FieldUtils, to support post-processing
  during simulations (!589)
Dave Moxey's avatar
Dave Moxey committed
55
- Add module to stretch homogeneous direction (!609)
Dave Moxey's avatar
Dave Moxey committed
56
- Add module to add composite ID of elements as a field (!674)
Dave Moxey's avatar
Dave Moxey committed
57

Dave Moxey's avatar
Dave Moxey committed
58 59 60
v4.3.4
------
**Library:**
Chris Cantwell's avatar
Chris Cantwell committed
61 62
- Fix performance issue with `v_ExtractDataToCoeffs` for post-processing of
  large simulations (!672)
Chris Cantwell's avatar
Chris Cantwell committed
63 64
- Added additional assertions to ensure homogeneous simulations have an even
  number of planes per process (!666)
Douglas Serson's avatar
Douglas Serson committed
65
- Fix compilation with NEKTAR_USE_MESHGEN option
Chris Cantwell's avatar
Chris Cantwell committed
66
- Fix IterativeFull solver in parallel (!685)
Douglas Serson's avatar
Douglas Serson committed
67
- Fix error message for missing fld file (!689)
Dave Moxey's avatar
Dave Moxey committed
68

Douglas Serson's avatar
Douglas Serson committed
69 70 71
**IncNavierStokesSolver:**
- Fix 2nd order time-integration for VCSMapping (!687)

Douglas Serson's avatar
Douglas Serson committed
72 73
v4.3.3
------
Dave Moxey's avatar
Dave Moxey committed
74
**Library**:
Kilian Lackhove's avatar
Kilian Lackhove committed
75
- Auto-detect a shared filesystem and removed --shared-filesystem option (!654)
Dave Moxey's avatar
Dave Moxey committed
76 77
- Fix filters when using adaptive driver to avoid output being overwritten after
  each adaptive update (!588)
Dave Moxey's avatar
Dave Moxey committed
78
- Minor fix to suppress Xxt output unless `--verbose` is specified (!642)
Michael Turner's avatar
Michael Turner committed
79
- Fix of DirectFull solver in case where only Neumann boundary conditions
Martin Vymazal's avatar
Martin Vymazal committed
80
  are imposed. (!655)
Dave Moxey's avatar
Dave Moxey committed
81

Dave Moxey's avatar
Dave Moxey committed
82 83
**FieldConvert**:
- Fix to avoid repeated import of field file (!649)
Dave Moxey's avatar
Dave Moxey committed
84
- Fix issue with C^0 projection (!644)
Chris Cantwell's avatar
Chris Cantwell committed
85
- Fix verbose output when using --procid (!648)
Dave Moxey's avatar
Dave Moxey committed
86

Dave Moxey's avatar
Dave Moxey committed
87 88
**NekMesh:**
- Fix namespace issue in Star-CCM+ input header in NekMesh (!661)
Dave Moxey's avatar
Dave Moxey committed
89

Dave Moxey's avatar
Dave Moxey committed
90 91
**CompressibleFlowSolver**:
- Fix issue with residual output (!647)
92
- Issues with 1D Euler solver fixed (!565)
Dave Moxey's avatar
Dave Moxey committed
93
- Fix deadlocking issue with boundary conditions (!657)
Dave Moxey's avatar
Dave Moxey committed
94

Douglas Serson's avatar
Douglas Serson committed
95 96
**Packaging**:
- Fix NekMesh dependencies for DEB package (!650)
97
- Fix PETSc build on newer linux distributions (!646)
Douglas Serson's avatar
Douglas Serson committed
98

Chris Cantwell's avatar
Chris Cantwell committed
99 100 101
v4.3.2
------
**Library**:
Dave Moxey's avatar
Dave Moxey committed
102
- Add small optimisation for DriverAdaptive (!618)
Chris Cantwell's avatar
Chris Cantwell committed
103
- Updated FFTW build to use the compiler used for building Nektar++ (!629)
Chris Cantwell's avatar
Chris Cantwell committed
104
- Fix numbering bug in periodic boundary conditions (!631)
Douglas Serson's avatar
Douglas Serson committed
105
- Print error message for invalid equation also in release version (!634)
Chris Cantwell's avatar
Chris Cantwell committed
106 107
- 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
108 109
- 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
110
- Fix CMake configuration for building on Windows 10 with VS 2015 (!641)
Dave Moxey's avatar
Dave Moxey committed
111
- Fix `IO_CheckSteps` to avoid missing first checkpoint (!639)
112 113
- 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
114

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

Dave Moxey's avatar
Dave Moxey committed
121 122 123
**Packaging**:
- Fixes for DEB package dependencies (!630)

Dave Moxey's avatar
Dave Moxey committed
124 125 126 127 128
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)
129
- Fixed a number of documentation issues (!586, !593, !596)
Chris Cantwell's avatar
Chris Cantwell committed
130
- Fix Homogeneous transform when unshuffling is not used. (!599)
Chris Cantwell's avatar
Chris Cantwell committed
131
- Fix namespace pollution in library header files. (!601)
Dave Moxey's avatar
Dave Moxey committed
132
- Fix issue with METIS compilation on clang 7.3 (!603)
Dave Moxey's avatar
Dave Moxey committed
133
- Fix issue with heterogeneous quadrilaterals (!607)
Chris Cantwell's avatar
Chris Cantwell committed
134 135
- 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
136
- Fix uninitialised array bug in AssemblyMap (!598)
Dave Moxey's avatar
Dave Moxey committed
137
- Fix issue with LAPACK call in eigenvalue calculation (!610)
Dave Moxey's avatar
Dave Moxey committed
138
- Fix FieldConvert processing of partitions in serial (!612)
Dave Moxey's avatar
Dave Moxey committed
139 140
- Fix use of multi-level static condensation in parallel with periodic
  boundary conditions (!614)
Chris Cantwell's avatar
Chris Cantwell committed
141
- Fix NaN detection to work in parallel (!605)
Chris Cantwell's avatar
Chris Cantwell committed
142 143
- Add additional constructor to ContField3DHomogeneous1D for FieldConvert
  extract module. (!590)
Dave Moxey's avatar
Dave Moxey committed
144

Chris Cantwell's avatar
Chris Cantwell committed
145 146 147
**NekMesh**:
- Fix incorrect link directory on CCMIO library.

Chris Cantwell's avatar
Chris Cantwell committed
148 149 150 151
**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
152 153 154 155
**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
156 157 158
**Packaging**:
- Fix dependency resolution on generation of DEB packages. (!616)

Dave Moxey's avatar
Dave Moxey committed
159 160
v4.3.0
------
161
**Library:**
Dave Moxey's avatar
Dave Moxey committed
162
- Changed default XML format to compress mesh data (!533, !547)
163
- Various fixes for 3D homogeneous post-processing (!531, !529, !528, !526, !521)
Chris Cantwell's avatar
Chris Cantwell committed
164
- Fix boundary condition imposition for 3D homogeneous 2D HelmSolve (!545)
165
- Fix range with variable p option (!522)
166
- Fix bug with hexahedra of heterogeneous order (!520) and reading files (!522)
167 168
- Fix history point output formatting (!518)
- Fix for OS X 10.11 (!512)
169
- Fix `HexGeom::v_GetDir` to support heterogeneous basis functions (!520)
170 171 172
- Added new `NekMeshUtils` library to support new `NekMesh` executable and
  associated CAD routines. Old CAD wrappers in LibUtilities now moved to
  `NekMeshUtils` (!527)
173 174 175
- 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
176 177
- Add support for PETSc matrix shell to use Nektar++ operations/preconditioners
  (!537)
Douglas Serson's avatar
Douglas Serson committed
178
- Fix bug with initial conditions of CG simulations using variable P (!543)
Douglas Serson's avatar
Douglas Serson committed
179
- Fix bug in 3DH2D with non-zero Dirichlet boundary conditions (!545)
Michael Turner's avatar
Michael Turner committed
180
- Added in a method to convert equispaced interpolated points back to
181
  coefficients which requires the introduction of a new StdRegions matrix.(!561)
Chris Cantwell's avatar
Chris Cantwell committed
182
- Empty XML tags which would override non-empty XML tags are now ignored (!581)
183
- Add contribution guide (!551)
Douglas Serson's avatar
Douglas Serson committed
184
- Add a filter to calculate exponential moving averages (!566)
185 186 187

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

Chris Cantwell's avatar
Chris Cantwell committed
189 190
**IncNavierStokesSolver**
- Fix floquet stability analysis for HalfMode case (!536)
Douglas Serson's avatar
Douglas Serson committed
191
- Add a filter to calculate Reynolds stresses (!566)
Chris Cantwell's avatar
Chris Cantwell committed
192

193
**FieldConvert:**
Dave Moxey's avatar
Dave Moxey committed
194
- Extended surface distance module to support hexahedra and quads (!524)
195
- Small fixes in interpolation routine (!515)
196 197
- Add support for surface extraction in 3DH1D case (!521)
- Add support for isocontour extraction for 3DH1D (!525)
198
- Add process module to calculate high-order mesh quality metric (!527).
Douglas Serson's avatar
Douglas Serson committed
199
- Add module to extract one of the planes of 3DH1D (!542)
200 201 202
- 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)
203
- Add module to project set of points to a fld file(!561)
204 205
- 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
206
- Add option to output equi-spaced points in VTU format (!550)
Spencer Sherwin's avatar
Spencer Sherwin committed
207
- Add module innerproduct (!568)
208
- Add command line option of `--part-only` and `--part-only-overlapping` (!569)
209

Dave Moxey's avatar
Dave Moxey committed
210 211 212
**NekMesh:**
- `MeshConvert` is now renamed to `NekMesh` to reflect new mesh generation
  functionality (!527).
213 214 215
- 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
216

217 218 219
**Documentation:**
- Added git submodule for including Nektar++ tutorials in the source tree (!507)

Dave Moxey's avatar
Dave Moxey committed
220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238
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:**
239 240
- A range of fixes for the coupled stability solver, which now works in parallel
  (!508)
Dave Moxey's avatar
Dave Moxey committed
241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326

**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
------

327 328 329 330 331 332 333 334 335 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
**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
368

369 370 371 372 373 374 375 376 377
**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
378 379 380 381

v4.0.0
------

382 383 384 385 386 387 388 389 390 391 392 393 394
**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
395

396 397 398 399 400 401
**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
402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 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 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510

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).