File: dynamicMeshDict

package info (click to toggle)
openfoam 1912.200626-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, bullseye
  • size: 238,940 kB
  • sloc: cpp: 1,159,638; sh: 15,902; ansic: 5,195; lex: 660; xml: 387; python: 282; awk: 212; makefile: 103; sed: 88; csh: 3
file content (158 lines) | stat: -rw-r--r-- 5,018 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
/*--------------------------------*- C++ -*----------------------------------*\
| =========                 |                                                 |
| \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox           |
|  \\    /   O peration     | Version:  v1912                                 |
|   \\  /    A nd           | Website:  www.openfoam.com                      |
|    \\/     M anipulation  |                                                 |
\*---------------------------------------------------------------------------*/
FoamFile
{
    version     2.0;
    format      ascii;
    class       dictionary;
    object      dynamicMeshDict;
}

// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //

motionSolverLibs    (rigidBodyMeshMotion);

dynamicFvMesh       dynamicOversetFvMesh;

motionSolver        rigidBodyMotion;

// rigidBodyMotionCoeffs  - not needed any more
//  {
    report          on;

    solver
    {
        type Newmark;
        //gamma   0.1;    // Velocity integration coefficient
        //beta    0.1;    // Position integration coefficient
    }

    accelerationRelaxation 0.4;

    // prescribedRotation requires some sub-iterations to converge faster
    // to desired value of omega.
    nIter   3;

    bodies
    {
        hull
        {
            type            rigidBody;
            parent          root;

            // To get Tensor of Inertia (symmetrical) use surfaceInertia
            // here hull is empty shell

            mass            0.552;
            inertia            (0.0033 0 0 0.01 0 0.0095);
            centreOfMass    (0.2857 -0.07 0); // relative to the centreOfMass
                                            // of parent body
                                            // (here root = global coord system)

            // Transformation tensor and centre of rotation (CoR)
            transform       (1 0 0 0 1 0 0 0 1) (0.2857 -0.07 0);

            joint
            {
            // These constrains are applied only to body hull,
            // other bodies need to have their own set
            // Constraints used for faster run

                type            composite;
                joints
                (
                    {
                        type Px;  // Allow translation in X -
                    }
                    {
                        type Ry;  // Allow rotation along Y axis
                                  // (local - body CS)
                    }
                );
            }

            patches         (hullWall);
            innerDistance   100;    // With overset we want to avoid the mesh
                                    // deformation so have large innerDistance
            outerDistance   200;
        }

        propeller
        {

            type            rigidBody;
            parent          hull;

            centreOfMass    (-0.2847 0.03 0);    // Relative to parent CoM
            mass            0.0288;
            inertia         (7.6e-6 0 0 4.2e-6 0 4.2e-6);
            // transform and CoR - relative to parent CoR
            transform       (1 0 0 0 1 0 0 0 1) (-0.2757 0.03 0);
            patches        (propellerWall);
            innerDistance   100;
            outerDistance   200;
            joint
            {
                type            Rx;
            }
        }

        rudder
        {
            type            rigidBody;
            parent          hull;
            centreOfMass    (-0.3602 -0.0055 0);
            mass            0.0746;
            inertia         (3.3e-5 0 0 4.7e-6 0 3.4e-5);
            // transform and CoR - relative to parent CoR
            transform       (1 0 0 0 1 0 0 0 1) (-0.3487 -0.04 0);
            patches        (rudderWall);
            innerDistance   100;
            outerDistance   200;
            joint
            {
                type            Ry;
            }
        }
    }

    restraints
    {
        rudderRotation
        {
            type                    prescribedRotation;
            body                    rudder;
            referenceOrientation    (1 0 0 0 1 0 0 0 1);
            axis                    (0 1 0);    // Axis of rotation
            omega                   sine;       // Function1 entry
            omegaCoeffs
            {
                frequency   4;
                amplitude   0.2;
                scale       (0 1 0);
                level       (0 1 0);
            }
        }
        propellerRotation
        {
            type                    prescribedRotation;
            body                    propeller;
            referenceOrientation    (1 0 0 0 1 0 0 0 1);
            axis                    (1 0 0);
            omega                   table
            (
                (0 (0 0 0))
                (1 (16 0 0))
            );
        }
    }

//  } // end of rigidBodyMotionCoeffs


// ************************************************************************* //