以DTCHullWave算例为例 ,使用dynamicmeshDict计算船舶波浪增阻,这里参数的意义是我所标注的这个意思吗?
- 
							
							
							
							
							
							
dynamicFvMesh dynamicMotionSolverFvMesh; motionSolverLibs ("librigidBodyMeshMotion.so");//求解所用的库 motionSolver rigidBodyMotion; report on;//在终端输出相关信息 solver { type Newmark;//求解器的显性或隐性,一阶或者二阶 } accelerationRelaxation 0.4;//修正因子,openfoam百科上说一般取0.9-1 bodies { hull { type rigidBody;//定义hull的类型为刚体 parent root;//不知道什么意思 centreOfMass (0 0 0);//重心 mass 412.73;//质量 inertia (40 0 0 921 0 921);//这个不知道是什么意思``` transform (1 0 0 0 1 0 0 0 1) (2.929541 0 0.2);//这个不知道是什么意思 joint//这个子字典不知道什么意思 猜测是和下面的restraints有关,Pz对应下面的translaterDamper 即在垂向上不进行约束,并指定垂向运动的阻尼系数。Ry对应下面的totationDamper,即在绕y轴旋转上不进行约束,并指定旋转阻尼系数 { type composite; joints ( { type Pz; } { type Ry; } ); } patches (hull);//钢体面名字 innerDistance 0.3; //在0.3范围内的网格随刚体一起移动,在1以外的网格不发生变形,在0.3-1之间的网格发生变形 outerDistance 1; } } restraints//这个不知道和constraints有什么区别 { translationDamper { type linearDamper;//线性的 与位移成正比 body hull; coeff 8596; //垂向阻尼系数 } rotationDamper { type sphericalAngularDamper; //与角速度成正比 body hull; coeff 11586;//绕y轴旋转的阻尼系数。 } } // ************************************************************************* //还有一个问题就是自己仿照DTCHullwave算例计算一艘kcs的船,算了0.76秒 paraview查看发现这个船一直下沉,纵倾的幅度很小很小,不仔细看都看不出来。请各位有经验的前辈给予一定的指导。 
- 
							
							
							
							
@一朵苍凉 这个算例我在商软starccm+里面已经算过,目前在openfoamv2012进行同样的计算。网格仿造DTChull算例,利用snappyHexMesh生成,我的求解文件输出是这样的,运动输出的6Dof结果感觉比较大,所以我认为可能是我的dynamicsMeshdict文件可能有问题,但不知道那儿有问题,您方便的话,再帮我看以下,指点一二,感谢。 
 Create timeCreate mesh for time = 0 Selecting dynamicFvMesh dynamicOversetFvMesh 
 Selecting motion solver: sixDoFRigidBodyMotion
 Applying solid body motion to entire mesh
 Selecting sixDoFSolver Newmark
 Translational constraint tensor (0 0 0 0 0 0 0 0 1)
 Rotational constraint tensor (1 0 0 0 1 0 0 0 1)PIMPLE: no residual control data found. Calculations will employ 2 corrector loops Using LTS 
 Reading field p_rghReading field U Reading/calculating face flux field phi Creating cellMask field to block out hole cells Creating interpolatedCells field Reading transportProperties Selecting incompressible transport model Newtonian 
 Selecting incompressible transport model Newtonian
 Selecting turbulence model type RAS
 Selecting RAS turbulence model kEpsilon
 RAS
 {
 RASModel kEpsilon;
 turbulence on;
 printCoeffs on;
 Cmu 0.09;
 C1 1.44;
 C2 1.92;
 C3 0;
 sigmak 1;
 sigmaEps 1.3;
 }Reading g Reading hRef 
 Calculating field g.hNo MRF models present No finite volume options present 
 DICPCG: Solving for pcorr, Initial residual = 1, Final residual = 9.39433050916e-07, No Iterations 467
 Reading/calculating face velocity UfStarting time loop Flow time scale min/max = 8.6866267787e-07, 0.0291922459613 
 Smoothed flow time scale min/max = 8.6866267787e-07, 0.0291922459613
 Time = 0.001PIMPLE: iteration 1 
 forces forces:
 rho: rho
 Not including porosity effectsRestraint translationDamper: force (-0 -0 -0) 
 Restraint rotationDamper: moment (-0 -0 -0)
 6-DoF rigid body motion
 Centre of rotation: (0 0 -0.461009082997)
 Centre of mass: (0 0 -0.461009082997)
 Orientation: (0.999999999122 -4.18404783667e-05 2.19816547713e-06 4.18405388615e-05 0.999999998746 -2.75277355352e-05 -2.19701370075e-06 2.75278274834e-05 0.999999999619)
 Linear velocity: (0 0 0.0218340063689)
 Angular velocity: (0.0550532334843 0.00439510067628 0.0836815815307)
 cellVolumeWeight : detected 2 mesh regionszone:0 nCells:1428000 zone:1 nCells:1108410Marking patch-cells on zone 0 
 Marking patch-cells on zone 1After patch analysis : nCells : 2536410 
 other : 2371976
 patch : 141190
 overset: 23244Creating mesh-to-mesh addressing for region0 and region0 regions using cellVolumeWeight 
 meshToMesh: Using AABBTree method
 Overlap volume: 2.68136988135
 cellVolumeWeight : detected 3 mesh regions after oversetFront : fraction:1 size:23970 
 Overset analysis : nCells : 2536410
 calculated : 2512836
 interpolated : 23432
 hole : 142Execution time for mesh.update() = 56.91 s 
 smoothSolver: Solving for alpha.water, Initial residual = 1.32501360637e-07, Final residual = 5.40621940608e-09, No Iterations 1
 Phase-1 volume fraction = 0.80497110631 Min(alpha.water) = 0 Max(alpha.water) = 1.00094392533
 MULES: Correcting alpha.water
 MULES: Correcting alpha.water
 MULES: Correcting alpha.water
 Phase-1 volume fraction = 0.804971106201 Min(alpha.water) = -5.22912457509e-16 Max(alpha.water) = 1.00094392533
 smoothSolver: Solving for alpha.water, Initial residual = 1.32287726888e-07, Final residual = 5.33117835751e-09, No Iterations 1
 Phase-1 volume fraction = 0.80497110685 Min(alpha.water) = -3.28734455684e-21 Max(alpha.water) = 1.00148843719
 Applying the previous iteration compression flux
 MULES: Correcting alpha.water
 MULES: Correcting alpha.water
 MULES: Correcting alpha.water
 MULES: Correcting alpha.water
 Phase-1 volume fraction = 0.804971106742 Min(alpha.water) = -3.32478347046e-14 Max(alpha.water) = 1.00148843719
 DILUPBiCGStab: Solving for p_rgh, Initial residual = 1, Final residual = 0.00904252579238, No Iterations 4
 time step continuity errors : sum local = 4.98432915358e-06, global = -4.35030739554e-09, cumulative = -4.35030739554e-09
 DILUPBiCGStab: Solving for p_rgh, Initial residual = 0.000104613428998, Final residual = 9.48129717208e-07, No Iterations 95
 time step continuity errors : sum local = 5.17819342099e-08, global = 9.75203425207e-09, cumulative = 5.40172685653e-09
 smoothSolver: Solving for epsilon, Initial residual = 0.00318321052028, Final residual = 5.00754349231e-05, No Iterations 2
 bounding epsilon, min: -0.00891808144257 max: 106.248958364 average: 1.03357845974
 smoothSolver: Solving for k, Initial residual = 0.999999999979, Final residual = 0.0989395295117, No Iterations 1
 PIMPLE: iteration 2
 smoothSolver: Solving for alpha.water, Initial residual = 1.5141031309e-05, Final residual = 5.25145730347e-09, No Iterations 2
 Phase-1 volume fraction = 0.804973015496 Min(alpha.water) = -7.90828268587e-26 Max(alpha.water) = 1.00074698501
 Applying the previous iteration compression flux
 MULES: Correcting alpha.water
 MULES: Correcting alpha.water
 MULES: Correcting alpha.water
 MULES: Correcting alpha.water
 Phase-1 volume fraction = 0.804972981578 Min(alpha.water) = -0.000375075266952 Max(alpha.water) = 1.00074698501
 smoothSolver: Solving for alpha.water, Initial residual = 1.54146759159e-05, Final residual = 5.35120277128e-09, No Iterations 2
 Phase-1 volume fraction = 0.804974867545 Min(alpha.water) = -4.8534415386e-10 Max(alpha.water) = 1.0014871078
 Applying the previous iteration compression flux
 MULES: Correcting alpha.water
 MULES: Correcting alpha.water
 MULES: Correcting alpha.water
 MULES: Correcting alpha.water
 Phase-1 volume fraction = 0.80497478029 Min(alpha.water) = -0.000141219315799 Max(alpha.water) = 1.0014871078
 DILUPBiCGStab: Solving for p_rgh, Initial residual = 3.91238817862e-05, Final residual = 9.99981139229e-07, No Iterations 15
 time step continuity errors : sum local = 1.97312896592e-06, global = 8.73490744761e-07, cumulative = 8.78892471617e-07
 DILUPBiCGStab: Solving for p_rgh, Initial residual = 6.95825944208e-06, Final residual = 8.05766273076e-07, No Iterations 19
 time step continuity errors : sum local = 1.37353052288e-06, global = -1.53311028217e-07, cumulative = 7.25581443401e-07
 smoothSolver: Solving for epsilon, Initial residual = 0.0476145055724, Final residual = 0.00249278364183, No Iterations 6
 bounding epsilon, min: -1.06527371456 max: 3100.56090246 average: 2.84781772564
 smoothSolver: Solving for k, Initial residual = 0.79259262557, Final residual = 0.0311989522415, No Iterations 4
 ExecutionTime = 112.02 s ClockTime = 112 sFlow time scale min/max = 1.85015907037e-06, 1e+15 
 Smoothed flow time scale min/max = 1.85015907037e-06, 0.0296574788498
 Time = 0.002PIMPLE: iteration 1 
 forces forces:
 rho: rho
 Not including porosity effectsRestraint translationDamper: force (-0 -0 -187.685118747) 
 Restraint rotationDamper: moment (-637.846763149 -50.9216364354 -969.534803614)
 6-DoF rigid body motion
 Centre of rotation: (0 0 -0.459430003293)
 Centre of mass: (0 0 -0.459430003293)
 Orientation: (0.998240479028 -0.0584060732538 0.0102311601265 0.058508037056 0.998237177305 -0.00996731887657 -0.00963097244877 0.0105483862658 0.999897982755)
 Linear velocity: (0 0 3.13632540091)
 Angular velocity: (6.05745573944 18.6026037453 117.298982883)
 cellVolumeWeight : detected 2 mesh regionszone:0 nCells:1428000 zone:1 nCells:1108410Marking patch-cells on zone 0 
 Marking patch-cells on zone 1After patch analysis : nCells : 2536410 
 other : 2371976
 patch : 141190
 overset: 23244Creating mesh-to-mesh addressing for region0 and region0 regions using cellVolumeWeight 
 meshToMesh: Using AABBTree method
 Overlap volume: 2.67649933669
 cellVolumeWeight : detected 4 mesh regions after oversetFront : fraction:1 size:24277 
 Overset analysis : nCells : 2536410
 calculated : 2512742
 interpolated : 23425
 hole : 243Execution time for mesh.update() = 54.91 s
 [3] #0 Foam::error::printStack(Foam::Ostream&) at ??:?
 [3] #1 Foam::sigFpe::sigHandler(int) at ??:?
 [3] #2 ? in /lib/x86_64-linux-gnu/libpthread.so.0
 [3] #3 Foam::symGaussSeidelSmoother::smooth(Foam::word const&, Foam::Field<double>&, Foam::lduMatrix const&, Foam::Field<double> 一堆错误提示省略Primary job terminated normally, but 1 process returned
 a non-zero exit code. Per user-direction, the job has been aborted.
 mpirun noticed that process rank 3 with PID 0 on node dell-optiplex-7070 exited on signal 8 (Floating point exception). 
- 
							
							
							
							
@zqliu012345 
 在DTCHullMoveing的算例中使用的是运动求解器你是rigidBodyMotion求解器,对于这个求解器的参数而言
 其中是centreOfMass 这个参数表示的是重心在旋转重心的相对位置,而不是表面意思理解的中心的全局坐标,他要跟transform配合使用的一般transform的第一个括号表示坐标系不旋转(因为前面就是一个单位矩阵)后面括号的坐标是旋转中心,如下图所示(interFoam中的floatingObject算例)(0.5 .45 0.1)是这个附体的旋转中心,而他的重心的全局坐标不是上面的centreOfMass 是 这个变量表示重心和旋转重心在三个方向的距离,因为需要进行加减才能得到重心,这里他的重心(质心)就是(0.5+0,0.45+0, 0.1+0.25)即(0.5 0.45 0.35)
  对于把重心当做旋转中心的情况 centreOfMass 里面就是全都是0 transform第一个括号都不变,第二个括号里面是重心的全局坐标(DTCHull算例就是这种情况 因此 他的centreofMass是(0 0 0)) 
 
			

 
 