I need to define in the transport properties dictionary that do not have dimensions. My strategy was to define them as dimensioned, but placing only zeros in the dimensions definitions. Is this correct, or there is any command that can be used?
Thanks in advance,
Hi Put the following code i
Put the following code in createFields.H:
and then this one in transportProperties files:
name name [0 0 0 0 0 0 0] 0.5;
I'd first recommend adding a s
I'd first recommend adding a subdictionary to transport properties to avoid possible collision with existing or future names and to cleanly group your variables. I'd also assume that you'd like to enter dimensionless variables without needing to enter the "[0 0 0 0 0]" dimensions, or even bother with adding the name twice (once for the dictionary keyword and once for the dimensionedScalar).
In transportProperties (or somewhere else), add your subdictionary:
Then in your code (eg, createFields.H), use the lookupOrAddToDict static member:
("firstParam", antonioDict, 10)
( "secondParam", antonioDict, 20 )
("thirdParam", antonioDict, 30)
This approach not only saves lots of typing in the dictionary, it also lets you specify default values.
If you wish to be extra safe, you'll want to check the original dictionary (eg, transportProperties) for the "antonioSpecialDict" first, and supply the code with an alternative place to edit if necessary.
I guess that dimensionedType should actually have a normal dict lookup (eg, lookupOrDefault) that doesn't alter the dictionary. Maybe you should submit a enhancement request for that.
varible = runTime.controlDict().lookupOrDefault<scalar>("var ible", 0);
|All times are GMT -4. The time now is 20:35.|