OpenFOAM v2206 リリースノート

2022年7月1日 (金) 23:02時点におけるMmer547 (トーク | 投稿記録)による版 (ページの作成:「= ESI OpenCFD Release OpenFOAM® v2206 = OpenCFDは、2022年6月にOpenFOAM® v2206をリリースすることをお知らせします。このリリースでは、コードの多くの領域でOpenFOAM-v2112の機能を拡張しています。新機能は、OpenCFDのお客様がスポンサーとなった開発、内部資金による開発、OpenFOAMコミュニティからの機能および変更の統合を表しています。 OpenFOAMは、OpenCFDによ…」)
(差分) ← 古い版 | 最新版 (差分) | 新しい版 → (差分)

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 and cylinderToPoint topoSet sources have been updated to accept point1 and point2 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.


Pre-processing

Numerics

Solvers and physical models

Boundary conditions

Post-processing

Parallel

Usability