- May 25, 2024
-
-
- Nov 27, 2023
-
-
- Nov 13, 2023
-
-
Dave Moxey authored
-
- Jun 02, 2023
-
-
- Jun 01, 2023
-
-
- May 11, 2023
-
-
- May 05, 2023
-
-
- Feb 22, 2023
-
-
- Feb 03, 2023
-
-
- Feb 01, 2023
-
-
- Jan 27, 2023
-
-
- Dec 28, 2022
-
-
- Jul 19, 2022
-
-
Chris Cantwell authored
-
- Oct 27, 2020
-
-
Spencer Sherwin authored
-
- Oct 26, 2020
-
-
Dave Moxey authored
-
- Oct 15, 2020
- Sep 27, 2020
- May 01, 2020
-
-
Allen Sanderson authored
-
- Apr 29, 2020
-
-
Allen Sanderson authored
-
- Feb 29, 2020
-
-
Zhen-Guo Yan authored
-
- Jan 28, 2020
-
-
Allen Sanderson authored
-
- Jan 23, 2020
-
-
Allen Sanderson authored
-
- Jan 22, 2020
-
-
Allen Sanderson authored
-
- Jan 07, 2020
-
-
Allen Sanderson authored
added free param to the factory and constructor, renamed type to variant, and generalized the IMEXdirk methods
-
- Jan 03, 2020
-
-
Allen Sanderson authored
-
- Dec 31, 2019
-
-
Allen Sanderson authored
-
- Dec 30, 2019
-
-
Allen Sanderson authored
-
- Dec 10, 2019
-
-
Allen Sanderson authored
-
- Nov 27, 2019
-
-
Chris Cantwell authored
-
- Nov 26, 2019
-
-
Chris Cantwell authored
-
- Aug 21, 2019
-
-
J. Davison de St. Germain authored
- Returned to using a string name (instead of enum) for the factory creation of the scheme. - Moved the scheme factory registrations out of the TimeIntegrationScheme.cpp file and into the separate SchemeInitializor.cpp file. This was a compromise from creating a separate .cpp file for every specific scheme file to do the registration. - Grouped the related Time Integrators into shared .h files. (For example, all Runge Kutta type Time Integrators are now defined in the RungeKuttaTimeIntegrationSchemes.h file. As this is mostly a "cosmetic" update, all Ctests (that were passing) are still passing. The ones that are not passing are related to the difference in implementations of time integrators between the wrappers (that are being replaced in this branch) and the time integrator demo. See details as specified in my previous commit: commit e66dd8da Author: J. Davison de St. Germain <dav@sci.utah.edu> Date: Sun May 19 22:01:22 2019 -0600 This still needs to be addressed and I believe is on Chris' to-do list.
-
- May 20, 2019
-
-
J. Davison de St. Germain authored
This is round 2 of the Time Integration refactoring. I like this arrangement better. I have removed from the "Integrators" (that I added in the previous commit) and just refer to them as schemes now. A scheme (also called a "master scheme") can have a number of phases (or sub-schemes). Each sub-scheme uses a "scheme" to set up the data for that phase. I have put the code that creates the (full/master) scheme in the corresponding file, eg: AdamsBashforthOrder2TimeIntegrationScheme.h (see the constructor) Additionally, the code that sets the data for the sub-scheme/phase that corresponds to the master scheme is also in the same file (see the SetupSchemeData() method). The data for each phase of the scheme is contained in the TimeIntegrationSchemeData object. This code refactoring removes the giant switch statement that was used to initialize the schemes. It also removes the use the Memory Manager that was returning shared pointers to each sub-scheme - which, while it worked, would not have allowed multiple schemes to be used in the same executable. I have also moved the TimeIntegrationSolution object into its own file. -------------- Note, to create an integration scheme, do something like the following (using the factory): LibUtilities::TimeIntegrationSchemeSharedPtr tiScheme; TimeIntegrationSchemeFactory & factory = LibUtilities::GetTimeIntegrationSchemeFactory(); tiScheme = factory.CreateInstance( "IMEXOrder1" ); Note, as I go to commit this, it occurs to me that instead of passing a string to CreateInstance(), we should be passing the enum type. I'll update this soon. -------------- There are currently 3 failing tests (of 459): 275 - IncNavierStokesSolver_Prism_channel_varP (Failed) 326 - LibUtilities_TimeIntegrationDemoIMEXOrder2 (Failed) 341 - StdRegions_StdProject2D_Quad_Mod_P6_Q7 (Failed) Note, "326 - LibUtilities_TimeIntegrationDemoIMEXOrder2" is failing because IMEXOrder2 is done differently between the TimeIntegration/ directory and the original TimeIntegrationDemo code (which "re-implemented" the creation of the schemes). (IMEXOrder2 should use IMEXdirk_2_3_2 as the 1st phase, but it is currently set to IMEXOrder1 instead. Once a definitive determination on this is made, this needs to be updated one way or the other.) It is unclear to me why the other 2 are failing (and the errors are very minuscule). For example: 275: Expected: 0 +/- 1e-12 275: Result: 1.27742e-12 Before this branch gets merged in, we need to track down the reason for these differences.
-