OpenFOAM v2206 リリースノート
ESI OpenCFD Release OpenFOAM® v2206
OpenCFDは、2022年6月にOpenFOAM® v2206をリリースすることをお知らせします。このリリースでは、コードの多くの領域でOpenFOAM-v2112の機能を拡張しています。新機能は、OpenCFDのお客様がスポンサーとなった開発、内部資金による開発、OpenFOAMコミュニティからの機能および変更の統合を表しています。
OpenFOAMは、OpenCFDによってGPLライセンスの下で配布されています。様々なLinuxや他のPOSIXシステムでのコンパイルに適したソースコードパッケージに加えて、このリリースにはコンパイル済みのバイナリパッケージが多数含まれています。
- Ubuntu Linux: packaged installation for Ubuntu 22.04 (LTS), 20.04 (LTS), 18.04 (LTS)
- openSUSE Linux: packaged installation for Leap15.4, Leap15.3, Leap15.2
- Redhat Linux variants: packaged installation for CentOS/Rocky 9, 8, 7 and Fedora 36, 35, ...
Windowsユーザーは、プリコンパイルされたパッケージについて、3つの選択肢があります(詳細はこちら)。
- Using Windows Subsystem for Linux (based on Ubuntu, openSUSE etc.)
- Native executables with cross-compiled
- A docker installation
Mac OSXユーザーは、ソースからコンパイルするか、コンパイル済みのパッケージのDockerコンテナを使用するオプションがあります(詳しくはこちら)。
Upgrading
v2206 User Upgrade Guide
Input Dictionaries
The dictionary inputs for coordinate systems and planes now support a simpler syntax. The changes are subtle but should feel more natural to write.
Coordinate Systems
The transform
or coordinateSystem
entries now accept an inline specification of the rotation type:
transform
{
origin (0 0 0);
rotation axisAngle;
axis (0 0 1);
angle 45;
}
As well as the longer form:
transform
{
origin (0 0 0);
rotation
{
type axisAngle;
axis (0 0 1);
angle 45;
}
}
Using coordinateRotation
was previously silently aliased to the rotation
sub-dictionary but is now deprecated verbosely. Similarly, the older long names axesRotation
, EulerRotation
and STARCDRotation
are now reported as aliases for the corresponding short names axes
, euler
and starcd
, respectively.
For translation only, can either use an explicit none rotation:
transform
{
origin (1 2 3);
rotation none;
}
or the implicit axes
specification with identity axes:
transform
{
origin (1 2 3);
e1 (1 0 0);
e3 (0 0 1);
}
Plane
Since a plane is very frequently (almost invariably) specified by reference point and its normal, the planeType
dictionary entry and any corresponding sub-dictionary have become fully optional. The default assumes a point/normal specification. For example, a sampled cutting plane:
slice
{
type cuttingPlane;
point (0 0 0);
normal (0 0 1);
}
instead of the much more verbose version:
slice
{
type cuttingPlane;
planeType pointAndNormal;
pointAndNormalDict
{
point (0 0 0);
normal (0 0 1);
}
}
Cylinder topo sources
- The
cylinderToCell
,cylinderToFace
andcylinderToPoint
topoSet sources have been updated to acceptpoint1
andpoint2
as the preferred names for the cylinder end points, which improves input consistency with the searchable cylinder specification.
Sampled sets
The updates in coordSetWriter will largely be transparent to the end-user except that in some cases the output filenames for raw format will be slightly different. The sets
input can now be specified as a dictionary entry (similar to sampled-surface), which permits use of changeDictionary
to modify content.
The function properties associated with sample sets are now qualified by the name of the respective subset. The unqualified property names now correspond to ensemble values (of all the subsets), whereas in previous versions this was broken (it would only return the value from the last subset). This means that if the existing workflow only had a single subset the net change will be non-breaking. It is, however, advisable to use the more precise specification to future-proof your workflow. For example,
sample1
{
scalar
{
average(line,T) 349.96521;
min(line,T) 349.9544281;
max(line,T) 350;
average(cells,T) 349.9854619;
min(cells,T) 349.6589286;
max(cells,T) 350.4967271;
average(line,epsilon) 0.04947733869;
min(line,epsilon) 0.04449639927;
max(line,epsilon) 0.06452856475;
}
label
{
size(line,T) 79;
size(cells,T) 1720;
size(line,epsilon) 79;
}
}
- sampled sets also have an additional special-purpose
probes
setFormat that collects all of the specified sampled location points into a single aggregate ensemble output with a raw probed format. In some cases it can be more convenient to specify probe locations as multiple sets of arrays/lines instead of as a large number of individual points.