This avoids potential hidden run-time errors caused by solvers running with boundary conditions which are not fully specified. Note that "null-constructor" here means the constructor from patch and internal field only, no data is provided. Constraint and simple BCs such as 'calculated', 'zeroGradient' and others which do not require user input to fully specify their operation remain on the null-constructor table for the construction of fields with for example all 'calculated' or all 'zeroGradient' BCs. Following this improvement the null-constructors have been removed from all pointPatchFields not added to the null-constructor table thus reducing the amount of code and maintenance overhead and making easier and more obvious to write new pointPatchField types.
OpenFOAM Configuration
The main OpenFOAM settings are located in the parent etc/ directory. The bash and csh shells are supported and to configure OpenFOAM source etc/bashrc or etc/cshrc respectively which source the following files in the config.sh or config.csh respectively:
settings: core settingsaliases: aliases for interactive shellsunset: sourced to clear as many OpenFOAM environment settings as possiblempi: MPI communications library settingsensight: application settings for EnSightparaview: application settings for ParaViewscotch: application settings for compiling against scotchmetis: application settings for compiling against metis 5
The config.*/example directories contains various example configuration files for the corresponding shell:
compiler: an example of fine tuning ThirdParty compiler settingsopenmpi: an example of fine tuning openmpi settings for OpenFOAMparaview: an example of chaining to the standard config/paraview with a different ParaView_VERSIONprefs: an example of supplying alternative site-defined settings