Difference between revisions of "FAQ/Solution procedure"

From OpenFOAMWiki
< FAQ
(How does one turn off the dimensional checking?: revised dimensional checking)
(revised second question)
 
Line 24: Line 24:
 
=== Is there a way to switch between single and double precision? ===
 
=== Is there a way to switch between single and double precision? ===
  
For Version 1.2 and older: Only by editing <tt>src/OpenFOAM/primitives/scalar/scalar.H</tt> and recompiling OpenFOAM. But why would you want to do that (except for memory issues)?
+
; For Version 1.2 and older: Only by editing <tt>src/OpenFOAM/primitives/scalar/scalar.H</tt> and recompiling OpenFOAM. But why would you want to do that (except for memory issues)?
 
(source: [http://openfoam.cfd-online.com/forum/messages/1/591.html])
 
(source: [http://openfoam.cfd-online.com/forum/messages/1/591.html])
  
For Version 1.3: Recompile OpenFOAM with ''single-precision'' enabled (for details see [[Howto_compile_OpenFOAM]])
+
; For Version 1.3 and newer: Recompile OpenFOAM with ''single-precision'' enabled, by setting the environment variable {{tt|WM_PRECISION_OPTION}} to {{tt|SP}}. For more details, see section [[Installation/Working_with_the_Shell#OpenFOAM_Environment_Variables|OpenFOAM Environment Variables]] at [[Installation/Working_with_the_Shell]].
 
+
  
 
=== Why doesn't my solver have any residuals for the velocity equations? ===
 
=== Why doesn't my solver have any residuals for the velocity equations? ===

Latest revision as of 00:28, 27 December 2016


1 FAQ Section 4: Solution procedure

Manipulating the solution procedure by non-programming means

1.1 How does one turn off the dimensional checking?

Dimensional checking is one of the cool features in OpenFOAM that helps to develop solvers that do something physically meaningful. Therefore: don't do this if not absolutely necessary.

To switch it off at run-time:

dimensionSet 0;

in the global controlDict file or in the local one. A few example paths:

  • In OpenFOAM 1.1: OpenFOAM-1.1/.OpenFOAM-1.1/controlDict
  • In OpenFOAM 1.5 and newer: OpenFOAM-1.5/etc/controlDict

For more details on how to set these options, see section Getting built-in feedback from OpenFOAM at HowTo_debugging.

A more controlled way is to use the dimensions()-method to set the dimension of the volXXXField in question to the desired dimension.

(source: How does one turn off the dimensional checking)

1.2 Is there a way to switch between single and double precision?

For Version 1.2 and older
Only by editing src/OpenFOAM/primitives/scalar/scalar.H and recompiling OpenFOAM. But why would you want to do that (except for memory issues)?

(source: [1])

For Version 1.3 and newer
Recompile OpenFOAM with single-precision enabled, by setting the environment variable WM_PRECISION_OPTION to SP. For more details, see section OpenFOAM Environment Variables at Installation/Working_with_the_Shell.

1.3 Why doesn't my solver have any residuals for the velocity equations?

  1. Edit the file system/fvSolution.
  2. Look inside the SIMPLE, PISO or PIMPLE block that you have configured for the solver you're using.
  3. You will find that you probably have momentumPredictor set to no.
Facts about "FAQ/Solution procedure"RDF feed
FaqdescriptionManipulating the solution procedure by non-programming means +
FaqnameSolution procedure +
Faqnumber4 +