Nektar merge requestshttps://gitlab.nektar.info/nektar/nektar/-/merge_requests2023-10-22T18:19:01Zhttps://gitlab.nektar.info/nektar/nektar/-/merge_requests/1644Add const qualifier to SetUniversalUniqueMap function in NekLinSysIter.h2023-10-22T18:19:01ZJacques XingAdd const qualifier to SetUniversalUniqueMap function in NekLinSysIter.h# Issue/feature addressed
Add a const qualifier to the SetUniversalUniqueMap function. This MR is motivated by the redesign effort.
# Proposed solution
# Implementation
## Tests
# Suggested reviewers
*Please suggest any people who...# Issue/feature addressed
Add a const qualifier to the SetUniversalUniqueMap function. This MR is motivated by the redesign effort.
# Proposed solution
# Implementation
## Tests
# Suggested reviewers
*Please suggest any people who would be appropriate to review your code.*
# Notes
*Please add any other information that could be useful for reviewers.*
# Checklist
- ~~[ ] Functions and classes, or changes to them, are documented.~~
- ~~[ ] User guide/documentation is updated.~~
- [x] Changelog is updated.
- ~~[ ] Suitable tests added for new functionality.~~
- [x] Contributed code is correctly formatted. (See the [contributing guidelines](https://gitlab.nektar.info/nektar/nektar/-/blob/master/CONTRIBUTING.md#using-clang-format)).
- ~~[ ] License added to any new files.~~
- [x] No extraneous files have been added (e.g. compiler output or test data files).v5.5.0Chris CantwellChris Cantwellhttps://gitlab.nektar.info/nektar/nektar/-/merge_requests/1640Fix 3DH1D Error filter for exact solutions2023-10-23T21:41:49ZHenrik WustenbergFix 3DH1D Error filter for exact solutions# Issue/feature addressed
The Error filter in 2.5D simulations with the IncNavierStokesSolver does not output the correct L2Error against the ExactSolution defined in the session file.
# Proposed solution
Transform the exact solution to...# Issue/feature addressed
The Error filter in 2.5D simulations with the IncNavierStokesSolver does not output the correct L2Error against the ExactSolution defined in the session file.
# Proposed solution
Transform the exact solution to Fourier-/WaveSpace after it has been evaluated from the session file.
# Implementation
Added a detection during InitObject of the FilterError class to check for 3DH1D or 3DH2D expansions and a HomogeneousFwdTrans within the Update function.
## Tests
- Manufactured 3D solution that can be compared against an exact solution
# Suggested reviewers
# Checklist
- [x] Functions and classes, or changes to them, are documented.
- ~~[ ] User guide/documentation is updated.~~
- [x] Changelog is updated.
- [x] Suitable tests added for new functionality.
- [x] Contributed code is correctly formatted. (See the [contributing guidelines](https://gitlab.nektar.info/nektar/nektar/-/blob/master/CONTRIBUTING.md#using-clang-format)).
- ~~[ ] License added to any new files.~~
- [x] No extraneous files have been added (e.g. compiler output or test data files).v5.5.0Jacques XingJacques Xinghttps://gitlab.nektar.info/nektar/nektar/-/merge_requests/1637Fix NonLinearPeregrine Solver2023-10-13T23:27:42ZJacques XingFix NonLinearPeregrine Solver# Issue/feature addressed
Due to a change of API, the `NonlinearPeregrine` is not working anymore. This MR address this issue.
# Proposed solution
The `NonlinearPeregrine` uses a deprecated version of `AddTraceIntegral`. This MR update ...# Issue/feature addressed
Due to a change of API, the `NonlinearPeregrine` is not working anymore. This MR address this issue.
# Proposed solution
The `NonlinearPeregrine` uses a deprecated version of `AddTraceIntegral`. This MR update the `NonlinearPeregrine` to use the updated version of `AddTraceIntegral`.
The `ShallowWaterSolver.cpp` main file has also been update to use the driver class. Previous test results have to be changed because L2error norms were previously normalized (The Standard driver does not normalized the L2 error norm).
# Implementation
## Tests
NonlinearSWE_Peregrine_SolitaryWave_DG_P6.xml
# Suggested reviewers
*Please suggest any people who would be appropriate to review your code.*
# Notes
*Please add any other information that could be useful for reviewers.*
# Checklist
- [x] Functions and classes, or changes to them, are documented.
- ~~[ ] User guide/documentation is updated.~~
- [x] Changelog is updated.
- [x] Suitable tests added for new functionality.
- [x] Contributed code is correctly formatted. (See the [contributing guidelines](https://gitlab.nektar.info/nektar/nektar/-/blob/master/CONTRIBUTING.md#using-clang-format)).
- ~~[ ] License added to any new files.~~
- [x] No extraneous files have been added (e.g. compiler output or test data files).v5.4.0Dave MoxeyDave Moxeyhttps://gitlab.nektar.info/nektar/nektar/-/merge_requests/1634Fix intermittent bug due to missing scotch graphinit.2023-10-06T18:21:09ZChris CantwellFix intermittent bug due to missing scotch graphinit.# Issue/feature addressed
Intermittent segmentation faults were being observed, particularly with recent versions of Scotch (7.0.3).
# Proposed solution
Correctly initialise the scotch graph being used by the substructuring algorithm.
...# Issue/feature addressed
Intermittent segmentation faults were being observed, particularly with recent versions of Scotch (7.0.3).
# Proposed solution
Correctly initialise the scotch graph being used by the substructuring algorithm.
# Implementation
Added missing call to `SCOTCH_graphInit` in the `SubstructuredGraph` class setup routine.
## Tests
None needed, as this is tested by the existing test suite.
# Checklist
- [X] Functions and classes, or changes to them, are documented.
- [X] User guide/documentation is updated.
- [x] Changelog is updated.
- [X] Suitable tests added for new functionality.
- [X] Contributed code is correctly formatted. (See the [contributing guidelines](https://gitlab.nektar.info/nektar/nektar/-/blob/master/CONTRIBUTING.md#using-clang-format)).
- [X] License added to any new files.
- [X] No extraneous files have been added (e.g. compiler output or test data files).v5.4.0Chris CantwellChris Cantwellhttps://gitlab.nektar.info/nektar/nektar/-/merge_requests/1627Matrix-Free operator for LinearAdvectionDiffusionReaction2024-03-26T21:28:42ZHenrik WustenbergMatrix-Free operator for LinearAdvectionDiffusionReaction# Issue/feature addressed
Enable `Collections` grouping for ADR operator to enable faster (Matrix-Free) runs for the Implicit Velocity-Correction scheme (`VCSImplicit`) in `IncNavierStokesSolver`.
# Proposed solution
Add the operator si...# Issue/feature addressed
Enable `Collections` grouping for ADR operator to enable faster (Matrix-Free) runs for the Implicit Velocity-Correction scheme (`VCSImplicit`) in `IncNavierStokesSolver`.
# Proposed solution
Add the operator similar to the `Helmholtz` implementations in Collections, however, including an `AdvectionKernel`. This new kernel requires time-dependent `varcoeffs` i.e. advection velocities. Therefore, this MR is based on !1701 which adds an interface for `varcoeffs` to `Collections`.
# Implementation
Most changes are analogous to the `Helmholtz` operator, however, the matrix-free routine requires interleaving of the advection velocities. The interleaving is done inside the `Collections` library for the matrix-free ADR operator.
## Tests
- Test based on existing VCSImplicit test which uses the Matrix-free routines instead of StdMatrix
# Suggested reviewers
@CFD-Xing (familiar with !1701)
@dmoxey
# Notes
# Checklist
- [x] Functions and classes, or changes to them, are documented.
- [x] User guide/documentation is updated.
- [x] Changelog is updated.
- [x] Suitable tests added for new functionality.
- [x] Contributed code is correctly formatted. (See the [contributing guidelines](https://gitlab.nektar.info/nektar/nektar/-/blob/master/CONTRIBUTING.md#using-clang-format)).
- [x] License added to any new files.
- [x] No extraneous files have been added (e.g. compiler output or test data files).v5.6.0Jacques XingJacques Xinghttps://gitlab.nektar.info/nektar/nektar/-/merge_requests/1626Draft: Some tidy-up for ShallowWaterSolver, CompressibleFlowSolver, and ADRSo...2024-03-21T23:49:14ZJacques XingDraft: Some tidy-up for ShallowWaterSolver, CompressibleFlowSolver, and ADRSolver# Issue/feature addressed
Some tidy-up. Partially split from MR !1613.
# Proposed solution
- Move `SVVVarDiffCoeff` from `UnsteadySystem.h` to `UnsteadyViscousBurgers.cpp`
- Delete unused function in `NonlinearPeregrine.cpp`
# Implemen...# Issue/feature addressed
Some tidy-up. Partially split from MR !1613.
# Proposed solution
- Move `SVVVarDiffCoeff` from `UnsteadySystem.h` to `UnsteadyViscousBurgers.cpp`
- Delete unused function in `NonlinearPeregrine.cpp`
# Implementation
## Tests
# Suggested reviewers
*Please suggest any people who would be appropriate to review your code.*
# Notes
*Please add any other information that could be useful for reviewers.*
# Checklist
- [x] Functions and classes, or changes to them, are documented.
- ~~[ ] User guide/documentation is updated.~~
- [x] Changelog is updated.
- ~~[ ] Suitable tests added for new functionality.~~
- [x] Contributed code is correctly formatted. (See the [contributing guidelines](https://gitlab.nektar.info/nektar/nektar/-/blob/master/CONTRIBUTING.md#using-clang-format)).
- ~~[ ] License added to any new files.~~
- [x] No extraneous files have been added (e.g. compiler output or test data files).v5.6.0Dave MoxeyDave Moxeyhttps://gitlab.nektar.info/nektar/nektar/-/merge_requests/1625Fix explist::v_GetNormals and GetElmtNormalLength2023-11-10T14:47:55ZBOYANG XIAFix explist::v_GetNormals and GetElmtNormalLength# Issue/feature addressed
This is an extension of the merge request !1606. We fix and clean up the `Explist::v_GetNormals()` and `Explist::GetElmtNormalLength()` functions so that they can work with variable-polynomial-order elements.
#...# Issue/feature addressed
This is an extension of the merge request !1606. We fix and clean up the `Explist::v_GetNormals()` and `Explist::GetElmtNormalLength()` functions so that they can work with variable-polynomial-order elements.
# Proposed solution
When computing the normal vectors on the trace space, we need to first find its adjacent element and then call local `v_ComputeTraceNormal`. It doesn't matter which side (left or right) to use because **any curved face shall be precisely described by the element of either side**. For convenience, we can directly use the left side because it always exists.
However, for some unknown reason, `GetElmtNormalLength()` is designed to return the length of both sides. Currently, I still follow the original design, but in the future, it should be simplified to return only one arg, the same as `GetNormals`.
Please note that `GetElmtNormalLength()` is only used by `DiffusionIP` to compute the penalty scale factor. If you are familiar with this part of the code, could you give an explanation? thank you!
## Tests
New Advection3D test cases are added to ADRSolver to test pyramid and prism elements of variable polynomial orders. e.g. `Prism{nm=4,5,5;np=5,6,5}. Existing Tri and Quad varP cases are modified to include anisotropic elements.
# Suggested reviewers
@dmoxey, @CFD-Xing
# Notes
*Please add any other information that could be useful for reviewers.*
# Checklist
- [x] Functions and classes, or changes to them, are documented.
- ~~[ ] User guide/documentation is updated.~~
- [x] Changelog is updated.
- [x] Suitable tests added for new functionality.
- [x] Contributed code is correctly formatted. (See the [contributing guidelines](https://gitlab.nektar.info/nektar/nektar/-/blob/master/CONTRIBUTING.md#using-clang-format)).
- ~~[ ] License added to any new files.~~
- [x] No extraneous files have been added (e.g. compiler output or test data files).v5.5.0Mohsen LahootiMohsen Lahootihttps://gitlab.nektar.info/nektar/nektar/-/merge_requests/1624Use default keyword for destructor in Driver class and subclasses2023-09-14T15:58:54ZJacques XingUse default keyword for destructor in Driver class and subclasses# Issue/feature addressed
Minor tidy-up of the Driver class and subclasses by using the `default` keyword for destructor. Split from MR !1613.
# Proposed solution
# Implementation
## Tests
# Suggested reviewers
*Please suggest any pe...# Issue/feature addressed
Minor tidy-up of the Driver class and subclasses by using the `default` keyword for destructor. Split from MR !1613.
# Proposed solution
# Implementation
## Tests
# Suggested reviewers
*Please suggest any people who would be appropriate to review your code.*
# Notes
*Please add any other information that could be useful for reviewers.*
# Checklist
- [x] Functions and classes, or changes to them, are documented.
- ~~[ ] User guide/documentation is updated.~~
- [x] Changelog is updated.
- ~~[ ] Suitable tests added for new functionality.~~
- [x] Contributed code is correctly formatted. (See the [contributing guidelines](https://gitlab.nektar.info/nektar/nektar/-/blob/master/CONTRIBUTING.md#using-clang-format)).
- ~~[ ] License added to any new files.~~
- [x] No extraneous files have been added (e.g. compiler output or test data files).v5.4.0Dave MoxeyDave Moxeyhttps://gitlab.nektar.info/nektar/nektar/-/merge_requests/1623Feature/some update to io2023-10-25T21:08:53ZJacques XingFeature/some update to io# Issue/feature addressed
This a tidy-up of the I/O in the `BasicUtils` library.
# Proposed solution
# Implementation
- Rename `v_ImportFieldData` to `v_ImportPtsFieldData` in `PtsIO.h` class and subclasses (`CsvIO.h`).
- Remove deprec...# Issue/feature addressed
This a tidy-up of the I/O in the `BasicUtils` library.
# Proposed solution
# Implementation
- Rename `v_ImportFieldData` to `v_ImportPtsFieldData` in `PtsIO.h` class and subclasses (`CsvIO.h`).
- Remove deprecated metadata code in `FieldIOXml.cpp`
- Remove unused code in `SessionReader.cpp`
- Remove commented code
## Tests
# Suggested reviewers
*Please suggest any people who would be appropriate to review your code.*
# Notes
*Please add any other information that could be useful for reviewers.*
# Checklist
- [x] Functions and classes, or changes to them, are documented.
- ~~[ ] User guide/documentation is updated.~~
- [x] Changelog is updated.
- ~~[ ] Suitable tests added for new functionality.~~
- [x] Contributed code is correctly formatted. (See the [contributing guidelines](https://gitlab.nektar.info/nektar/nektar/-/blob/master/CONTRIBUTING.md#using-clang-format)).
- ~~[ ] License added to any new files.~~
- [x] No extraneous files have been added (e.g. compiler output or test data files).v5.5.0Dave MoxeyDave Moxeyhttps://gitlab.nektar.info/nektar/nektar/-/merge_requests/1622Tidy-up of Collection library2023-11-01T14:40:13ZJacques XingTidy-up of Collection library# Issue/feature addressed
This is a tidy-up of the Collection library.
# Proposed solution
# Implementation
- Use `default` keyword for destructors
- Move factory at the beginning of the file
- Use `pCollExp[0]->GetShapeDimension()` wh...# Issue/feature addressed
This is a tidy-up of the Collection library.
# Proposed solution
# Implementation
- Use `default` keyword for destructors
- Move factory at the beginning of the file
- Use `pCollExp[0]->GetShapeDimension()` when appropriate
- Consistently use `pCollExp[0]->GetTotPoints()`
- Remove unused code
## Tests
# Suggested reviewers
*Please suggest any people who would be appropriate to review your code.*
# Notes
*Please add any other information that could be useful for reviewers.*
# Checklist
- [x] Functions and classes, or changes to them, are documented.
- ~~[ ] User guide/documentation is updated.~~
- [x] Changelog is updated.
- ~~[ ] Suitable tests added for new functionality.~~
- [x] Contributed code is correctly formatted. (See the [contributing guidelines](https://gitlab.nektar.info/nektar/nektar/-/blob/master/CONTRIBUTING.md#using-clang-format)).
- ~~[ ] License added to any new files.~~
- [x] No extraneous files have been added (e.g. compiler output or test data files).v5.5.0Dave MoxeyDave Moxeyhttps://gitlab.nektar.info/nektar/nektar/-/merge_requests/1621Add additional test for SDC time-integration2023-09-14T16:00:07ZJacques XingAdd additional test for SDC time-integration# Issue/feature addressed
Add some additional tests for SDC time-integration techniques. Currently, SDC time-integration schemes are only tested through `TimeIntegrationDemo.cpp`. However, this does not offer a complete coverage of the s...# Issue/feature addressed
Add some additional tests for SDC time-integration techniques. Currently, SDC time-integration schemes are only tested through `TimeIntegrationDemo.cpp`. However, this does not offer a complete coverage of the schemes notably in terms of time-dependent boundary condition and accuracy and convergence.
# Proposed solution
Include SDC tests using the ADR solver. This allows a full coverage of explicit, implicit, and IMEX SDC schemes.
# Implementation
## Tests
# Suggested reviewers
*Please suggest any people who would be appropriate to review your code.*
# Notes
*Please add any other information that could be useful for reviewers.*
# Checklist
- [x] Functions and classes, or changes to them, are documented.
- ~~[ ] User guide/documentation is updated.~~
- [x] Changelog is updated.
- [x] Suitable tests added for new functionality.
- [x] Contributed code is correctly formatted. (See the [contributing guidelines](https://gitlab.nektar.info/nektar/nektar/-/blob/master/CONTRIBUTING.md#using-clang-format)).
- ~~[ ] License added to any new files.~~
- [x] No extraneous files have been added (e.g. compiler output or test data files).v5.4.0Dave MoxeyDave Moxeyhttps://gitlab.nektar.info/nektar/nektar/-/merge_requests/1620Refactoring Collections & Introducing the PhysInterp1DScaled function inside ...2023-11-26T19:54:59ZAlexandra LiosiRefactoring Collections & Introducing the PhysInterp1DScaled function inside collections# Issue/feature addressed
During the profiling of the IncNavierStokesSolver, which was carried out using the Solaris software profiling suite inside the Clapham node, it was found that the PhysInterp1DScaled function is one of the most t...# Issue/feature addressed
During the profiling of the IncNavierStokesSolver, which was carried out using the Solaris software profiling suite inside the Clapham node, it was found that the PhysInterp1DScaled function is one of the most time-consuming ones. A simplified test-case was used for this purpose, based on the 2D slice of the IFW in the span-wise location of y = -250 mm. This function is called when SPECTRALHPDEALIASING is set to TRUE inside the <SOLVERINFO> section for the IncNavierStokesSolver and is responsible for evaluating the advection term using over-intergration, or "practically" more quadrature points than the default NUMMODES+1, or NUMMODES+2 which is specified depending on the polynomial order of the simulation.
# Proposed solution
Introduce the PhysInterp1DScaled operator inside Collections, so that more efficient implementations can be developed such as sum-factorization and matrix-free. This introduced an additional challenge because the input size and the output size of this operator are not the same with the other operators. \
Currently in Nektar++, it is possible to operate on an expansion list from Physical Space to Coefficient Space and the opposite way around, while the size of the number of quadrature points (Physical Space) and the size of the number of modes (Coefficient Space) is fixed. This is not applicable to PhysInterp1DScaled as it operates from Physical Space (quadrature points of the expansion list) to Physical Space (quadrature points after over-integration). The quadrature points of the output (enhanced space) are calculated based on a scaling factor which 1.5 for the incompressible solver and 2 for the compressible solver. This scaling factor is taken into account through the variable scale = m_factors[StdRegions::eFactorConst], which is taken as an input when the PhysInterp1DScaled function is called. For example inside a 1D domain, if the expansion list includes 10 quadrature points, then the output of the PhysInterp1DScaled function will include 12 quadrature points with a scaling factor of 1.5.
# Implementation
1. Simplified/Reduced the if-statements for generating the Collections based on the BasisKeys of each element inside the expansion list.
2. Introduced m_inputSize and m_outputSize members inside the Operator base class. \
m_inputSize stores the number of modes or quadrature points that are given as input to the operator. \
m_outputSize stores the number of modes or quadrature points that are given as output from the operator. \
3. Introduced Helper class for every operator inside collections, which is responsible for storing as a member the size of the collection which is taken as an input by the operator and the size of the collection which is given as an output to allow having a variable size for the output of the operators. Also, it removes the usage of m_coll_coeff_offset and m_coll_phys_offset to access the mesh elements of each collection. The size of each collection can be used to access the elements of each collection. This assumes that each collection is composed of elements that are stored continuously in the expansion list.
![image](/uploads/7332e4dbab63f787de0fa72756fd75e4/image.png) In this figure, each continuous "green" block corresponds to a new Collection.
Currently, the helper class has a variable "NekDouble scale{1.5}" for the scaling factor - Need to update this to be modular so that it is 1.5 for the IncNavierStokesSolver, but 2 for the CompressibleFlowSolver and 2 members:
- m_inputSize which stores the input size of the collection for each operator, in the BwdTrans operator this is equal to the number of elements inside the collections multiplied by the number of modes of a single element. It can be accessed inside MultiRegions using the function GetInputSize(Collections::NameOfTheOperator).
- m_outputSize which stores the output size of the collection for each operator, in the BwdTrans operator this is equal to the number of elements inside the collections multiplied by the number of quadrature points of a single element. It can be accessed inside MultiRegions using the function GetOutputSize(Collections::NameOfTheOperator)
It is not necessary anymore to store the m_coll_phys_offset and m_coll_coeff_offset arrays, because the offset from the first element of the expansion list can be calculated using:\
input_offset += m_collections[i].GetInputSize(Collections::NameOfTheOperator); \
output_offset += m_collections[i].GetOutputSize(Collections::NameOfTheOperator); \
where index i corresponds to the index of the collection
4. Introduced PhysInterp1DScaled function inside the Collections to allow for more efficient implementations of this function. Currently, only the NoCollection implementation is available but the code is in place for both sum-factorization, matrix-free etc.
## Tests
No additional tests are necessary as this is a refactoring of the existing functionality in Nektar++.
# Suggested reviewers
@ssherw @ccantwel @mlahooti
# Notes
# Checklist
- [x] Functions and classes, or changes to them, are documented.
- ~~[ ] User guide/documentation is updated.~~
- [x] Changelog is updated.
- [x] Suitable tests added for new functionality.
- [x] Contributed code is correctly formatted. (See the [contributing guidelines](https://gitlab.nektar.info/nektar/nektar/-/blob/master/CONTRIBUTING.md#using-clang-format)).
- [x] License added to any new files.
- [x] No extraneous files have been added (e.g. compiler output or test data files).v5.5.0Dave MoxeyDave Moxeyhttps://gitlab.nektar.info/nektar/nektar/-/merge_requests/1616Fix/virtual function contfield2023-09-01T13:12:30ZJacques XingFix/virtual function contfield# Issue/feature addressed
Some virtual functions in the ContField class are not properly written from a design pattern point of view. This MR fix this issue.
# Proposed solution
# Implementation
## Tests
# Suggested reviewers
*Please...# Issue/feature addressed
Some virtual functions in the ContField class are not properly written from a design pattern point of view. This MR fix this issue.
# Proposed solution
# Implementation
## Tests
# Suggested reviewers
*Please suggest any people who would be appropriate to review your code.*
# Notes
*Please add any other information that could be useful for reviewers.*
# Checklist
- [x] Functions and classes, or changes to them, are documented.
- ~~[ ] User guide/documentation is updated.~~
- [x] Changelog is updated.
- ~~[ ] Suitable tests added for new functionality.~~
- [x] Contributed code is correctly formatted. (See the [contributing guidelines](https://gitlab.nektar.info/nektar/nektar/-/blob/master/CONTRIBUTING.md#using-clang-format)).
- ~~[ ] License added to any new files.~~
- [x] No extraneous files have been added (e.g. compiler output or test data files).v5.4.0Dave MoxeyDave Moxeyhttps://gitlab.nektar.info/nektar/nektar/-/merge_requests/1613Feature/parareal pfasst redesign2023-10-26T11:19:23ZJacques XingFeature/parareal pfasst redesign# Issue/feature addressed
This is a redesign of the Parareal and PFASST subclasses.
# Proposed solution
# Implementation
This MR has been split into:
- Update driver class and subclasses to use default destructor (see !1624)
- Add add...# Issue/feature addressed
This is a redesign of the Parareal and PFASST subclasses.
# Proposed solution
# Implementation
This MR has been split into:
- Update driver class and subclasses to use default destructor (see !1624)
- Add additional SDC test to the CI (see !1621)
- ~~Move `SVVVarDiffCoeff` from `UnsteadySystem.h` to `UnsteadyViscousBurgers.cpp` (see !1626)~~
- Fix typo in user-guide and fix bug for parallel-in-time FieldConvert (see !1645)
- Add member function in MPI communicator to check if time-parallel is enable (see !1647)
- Update default global system solver parameters for paralell-in-time (see !1649)
- Update AssemblyMap to reduce verbosity when using parallel-in-time (see !1651)
- Add safety check for FinTime parameter for parallel-in-time (see !1652)
## Tests
- solvers/ADRSolver/Tests/PFASSTDriverUnsteadyAdvection2D.tst
- solvers/ADRSolver/Tests/PararealDriverUnsteadyAdvection2D.tst
# Suggested reviewers
*Please suggest any people who would be appropriate to review your code.*
# Notes
*Please add any other information that could be useful for reviewers.*
# Checklist
- [x] Functions and classes, or changes to them, are documented.
- ~~[ ] User guide/documentation is updated.~~
- [x] Changelog is updated.
- [x] Suitable tests added for new functionality.
- [x] Contributed code is correctly formatted. (See the [contributing guidelines](https://gitlab.nektar.info/nektar/nektar/-/blob/master/CONTRIBUTING.md#using-clang-format)).
- ~~[ ] License added to any new files.~~
- [x] No extraneous files have been added (e.g. compiler output or test data files).v5.5.0Dave MoxeyDave Moxeyhttps://gitlab.nektar.info/nektar/nektar/-/merge_requests/1612Rename communicator in LinearAlgebra2023-09-01T13:10:10ZJacques XingRename communicator in LinearAlgebra# Issue/feature addressed
Rename communicators `m_Comm` and `vComm` as `m_rowComm` and `vRowComm` respectively for consistency.
# Proposed solution
# Implementation
## Tests
# Suggested reviewers
*Please suggest any people who would ...# Issue/feature addressed
Rename communicators `m_Comm` and `vComm` as `m_rowComm` and `vRowComm` respectively for consistency.
# Proposed solution
# Implementation
## Tests
# Suggested reviewers
*Please suggest any people who would be appropriate to review your code.*
# Notes
*Please add any other information that could be useful for reviewers.*
# Checklist
- [x] Functions and classes, or changes to them, are documented.
- ~~[ ] User guide/documentation is updated.~~
- [x] Changelog is updated.
- ~~[ ] Suitable tests added for new functionality.~~
- [x] Contributed code is correctly formatted. (See the [contributing guidelines](https://gitlab.nektar.info/nektar/nektar/-/blob/master/CONTRIBUTING.md#using-clang-format)).
- ~~[ ] License added to any new files.~~
- ~~[ ] No extraneous files have been added (e.g. compiler output or test data files).~~v5.4.0Spencer SherwinSpencer Sherwinhttps://gitlab.nektar.info/nektar/nektar/-/merge_requests/1611Fix hdf5 partition for Parareal2023-09-07T09:40:25ZJacques XingFix hdf5 partition for Parareal# Issue/feature addressed
The previous implementation of the hdf5 mesh partition does not have any provision for Parallel-in-Time partitioning. This MR fix the problem and allow the use of multiple processors in time.
# Proposed solutio...# Issue/feature addressed
The previous implementation of the hdf5 mesh partition does not have any provision for Parallel-in-Time partitioning. This MR fix the problem and allow the use of multiple processors in time.
# Proposed solution
Use GetSpaceComm() communicator when relevant.
# Implementation
## Tests
# Suggested reviewers
*Please suggest any people who would be appropriate to review your code.*
# Notes
*Please add any other information that could be useful for reviewers.*
# Checklist
- [x] Functions and classes, or changes to them, are documented.
- ~~[ ] User guide/documentation is updated.~~
- [x] Changelog is updated.
- [x] Suitable tests added for new functionality.
- [x] Contributed code is correctly formatted. (See the [contributing guidelines](https://gitlab.nektar.info/nektar/nektar/-/blob/master/CONTRIBUTING.md#using-clang-format)).
- ~~[ ] License added to any new files.~~
- [x] No extraneous files have been added (e.g. compiler output or test data files).v5.4.0Dave MoxeyDave Moxeyhttps://gitlab.nektar.info/nektar/nektar/-/merge_requests/1610Fix: Fixed workspace size in for triangle BwdTrans2023-08-08T11:23:06ZJames Edgeleyjames.edgeley@ukaea.ukFix: Fixed workspace size in for triangle BwdTrans# Issue/feature addressed
The workspace size for the triangle BwdTrans operator is incorrect in both the StdRegions and Collection implementations
# Proposed solution
Workspace size changed from nquad0*nmode1 per element to nquad1*nmode...# Issue/feature addressed
The workspace size for the triangle BwdTrans operator is incorrect in both the StdRegions and Collection implementations
# Proposed solution
Workspace size changed from nquad0*nmode1 per element to nquad1*nmode0 per element
# Implementation
Edits in files StdRegions/StdTriExp.cpp and Collections/BwdTrans.cpp
## Tests
# Suggested reviewers
*Please suggest any people who would be appropriate to review your code.*
# Notes
*Please add any other information that could be useful for reviewers.*
# Checklist
- [x] Functions and classes, or changes to them, are documented.
- ~~[ ] User guide/documentation is updated.~~
- [x] Changelog is updated.
- ~~[ ] Suitable tests added for new functionality.~~
- [x] Contributed code is correctly formatted. (See the [contributing guidelines](https://gitlab.nektar.info/nektar/nektar/-/blob/master/CONTRIBUTING.md#using-clang-format)).
- ~~[ ] License added to any new files.~~
- ~~[ ] No extraneous files have been added (e.g. compiler output or test data files).~~v5.4.0https://gitlab.nektar.info/nektar/nektar/-/merge_requests/1609Remove unused Domain.cpp and Domain.h files2023-08-08T10:21:17ZJacques XingRemove unused Domain.cpp and Domain.h files# Issue/feature addressed
The `Domain.cpp` and `Domain.h` files appear to be unused.
# Proposed solution
Delete unused `Domain.cpp` and `Domain.h` files
# Implementation
## Tests
# Suggested reviewers
*Please suggest any people who w...# Issue/feature addressed
The `Domain.cpp` and `Domain.h` files appear to be unused.
# Proposed solution
Delete unused `Domain.cpp` and `Domain.h` files
# Implementation
## Tests
# Suggested reviewers
*Please suggest any people who would be appropriate to review your code.*
# Notes
*Please add any other information that could be useful for reviewers.*
# Checklist
- [x] Functions and classes, or changes to them, are documented.
- ~~[ ] User guide/documentation is updated.~~
- [x] Changelog is updated.
- ~~[ ] Suitable tests added for new functionality.~~
- [x] Contributed code is correctly formatted. (See the [contributing guidelines](https://gitlab.nektar.info/nektar/nektar/-/blob/master/CONTRIBUTING.md#using-clang-format)).
- ~~[ ] License added to any new files.~~
- [x] No extraneous files have been added (e.g. compiler output or test data files).v5.4.0Dave MoxeyDave Moxeyhttps://gitlab.nektar.info/nektar/nektar/-/merge_requests/1608Remove useless ReadExpressions and SubstituteExpressions function in sessionR...2023-08-08T10:26:55ZJacques XingRemove useless ReadExpressions and SubstituteExpressions function in sessionReader# Issue/feature addressed
The `ReadExpressions` and `SubstituteExpressions` functions appear to be useless and not used anymore in any meaningfull way.
# Proposed solution
Remove `ReadExpressions` and `SubstituteExpressions` functions a...# Issue/feature addressed
The `ReadExpressions` and `SubstituteExpressions` functions appear to be useless and not used anymore in any meaningfull way.
# Proposed solution
Remove `ReadExpressions` and `SubstituteExpressions` functions and dependencies.
# Implementation
## Tests
# Suggested reviewers
*Please suggest any people who would be appropriate to review your code.*
# Notes
*Please add any other information that could be useful for reviewers.*
# Checklist
- [x] Functions and classes, or changes to them, are documented.
- ~~[ ] User guide/documentation is updated.~~
- [x] Changelog is updated.
- ~~[ ] Suitable tests added for new functionality.~~
- [x] Contributed code is correctly formatted. (See the [contributing guidelines](https://gitlab.nektar.info/nektar/nektar/-/blob/master/CONTRIBUTING.md#using-clang-format)).
- ~~[ ] License added to any new files.~~
- [x] No extraneous files have been added (e.g. compiler output or test data files).v5.4.0Dave MoxeyDave Moxeyhttps://gitlab.nektar.info/nektar/nektar/-/merge_requests/1607Feature/parallel in time optimization2023-09-07T15:47:24ZJacques XingFeature/parallel in time optimization# Issue/feature addressed
Optimization was disable for Parallel-in-Time simulation. This MR provide a full implementation of optimization for Parallel-in-Time support.
# Proposed solution
Update `CollectionOptimization` to independently...# Issue/feature addressed
Optimization was disable for Parallel-in-Time simulation. This MR provide a full implementation of optimization for Parallel-in-Time support.
# Proposed solution
Update `CollectionOptimization` to independently optimizing for each time level. This is achieved by using a map of a map with the time level as a key parameter. If a time level is missing from the optfile, then only the missing time level will be updated.
# Implementation
*A more detailed description of the changes. Please include any details necessary for reviewers to understand your work, and point out particular points would like them to pay particular attention to.*
## Tests
# Suggested reviewers
*Please suggest any people who would be appropriate to review your code.*
# Notes
*Please add any other information that could be useful for reviewers.*
# Checklist
- [x] Functions and classes, or changes to them, are documented.
- ~~[ ] User guide/documentation is updated.~~
- [x] Changelog is updated.
- ~~[ ] Suitable tests added for new functionality.~~
- [x] Contributed code is correctly formatted. (See the [contributing guidelines](https://gitlab.nektar.info/nektar/nektar/-/blob/master/CONTRIBUTING.md#using-clang-format)).
- ~~[ ] License added to any new files.~~
- [x] No extraneous files have been added (e.g. compiler output or test data files).v5.4.0Dave MoxeyDave Moxey