|
[Sponsors] |
December 11, 2021, 20:39 |
lduMatrix and LduMatrix
|
#1 |
New Member
Russian Federation
Join Date: Apr 2020
Posts: 18
Rep Power: 6 |
||
December 12, 2021, 06:46 |
|
#2 |
Senior Member
Herpes Free Engineer
Join Date: Sep 2019
Location: The Home Under The Ground with the Lost Boys
Posts: 931
Rep Power: 13 |
LduMatrix is a class template. The classes starting with a capital letter in OpenFOAM are usually class templates.
__________________
The OpenFOAM community is the biggest contributor to OpenFOAM: User guide/Wiki-1/Wiki-2/Code guide/Code Wiki/Journal Nilsson/Guerrero/Holzinger/Holzmann/Nagy/Santos/Nozaki/Jasak/Primer Governance Bugs/Features: OpenFOAM (ESI-OpenCFD-Trademark) Bugs/Features: FOAM-Extend (Wikki-FSB) Bugs: OpenFOAM.org How to create a MWE New: Forkable OpenFOAM mirror |
|
December 12, 2021, 13:35 |
|
#4 |
Senior Member
Mark Olesen
Join Date: Mar 2009
Location: https://olesenm.github.io/
Posts: 1,714
Rep Power: 40 |
In theory yes, but I would expect it to break in several places elsewhere - at the latest when doing the linear solve. Will also fall apart without processor boundary handling for complex types. IMO need to treat this as a development topic at the moment.
|
|
December 13, 2021, 06:24 |
|
#6 | |
Senior Member
Mark Olesen
Join Date: Mar 2009
Location: https://olesenm.github.io/
Posts: 1,714
Rep Power: 40 |
Quote:
Single or double precision are no problem per se, since this is what the various WM_PRECISION_OPTION values do (SP, DP, SPDP). However, the backend linear solvers also need to be available for the corresponding precision. If, for example, you compile OpenFOAM with WM_PRECISION_OPTION=SP (instead of the default DP), then all fields and solvers are single-precision and it all will work. You can even compile with SPDP, which means that all of the fields are handled in single-precision, but the linear solve is actually running in double-precision. This gives the benefit of lower memory bandwidth for field operations, but higher precision for the linear solve which will normally have better/faster convergence. If you are trying to have a single-precision solve with double-precision for all of the fields (ie, a non-existent DPSP mode), you are out of luck. I think it is time that you explain what you are trying to solve. |
||
December 15, 2021, 02:30 |
|
#7 |
Senior Member
|
Dear Mark,
Thank you for asking me to clarify my doubts. I am trying to solve doubts I have related to the computational efficiency of laplacianFoam and scalarTransportFoam (to start with). These doubts are related to the efficiency of the iterative solvers (both sequential and parallel). In short: 1/ in laplacianFoam I would to compare GAMG with genuine AMG on unstructured grids; 2/ in scalarTransportFoam I would like to compare current solvers with ILU with drop tolerance after AMD reordering. You pointed me earlier to work done using PETSc. I need to go back and read more documentation. I will get back to you here. Again, thank you for thinking along. Cheers, Domenico. |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
What is LduMatrix template class for in comparison to lduMatrix class? | doctorWho | OpenFOAM Programming & Development | 2 | August 14, 2018 05:41 |
Create new member variable for lduMatrix | FabianL | OpenFOAM | 0 | December 13, 2017 04:39 |
Why renumbering works for LduMatrix? | chengdi | OpenFOAM | 4 | July 31, 2017 18:54 |
lduMatrix problem in High order scheme | rxgrch | OpenFOAM Programming & Development | 3 | April 2, 2013 10:30 |
ldumatrix | zaratustra | OpenFOAM Programming & Development | 6 | August 20, 2009 05:48 |