# 问题 转速在14s之后一直掉 ![[Pasted image 20250120102349.png]] ## yaw求解过程 ## 思路 yaw_mom 到 augmat - 再到 qdt dof_yaw 哪里发生了比较大的变化导致 发散 外推?drtr? 1 输入yaw_mom from 控制 multibody_solution 1834-1846行 Elastodyn.f90 8295 FAST_Subs.f90 - 4835 - 4520 - 4865 pmom_bnc_rt 在基板 (point O) 处由机舱、发电机和转子产生的偏力矩 [-] 2方向 Partial moment at the base plate (body B) / yaw bearing (point O) due the nacelle, generator, and rotor [-] - 2, 10: yaw 差距较小 3-11 - 2, 12: geaz 差距较大 3-13 - 2, 13: drtr 差距较大 3-14 pmom_ngn_rt 就有问题 Partial moment at the nacelle (body N) / selected point on rotor-furl axis (point V) due the structure that furls with the rotor, generator, and rotor [-] pmom_lprot 有问题 (2,10)PMomLPRot-(3,11) pmom_lprot - Partial moment at the teeter pin (point P) on the low-speed shaft (body L) due to the rotor [-] pmom_h0b - Partial moment at the hub (body H) / blade root (point S(0)) due to the blade [-] pmom_lprot[.., dof] += rt_hs.pmom_h0b[.., K, dof] + tmp_vec n = 0 rust | pmom_lprot[.., 10] | [10065.169025312112, -880.58815982021201, 0] | | ------------------- | ---------------------------------------------------------------- | | tmp_vec | [-106008.52186436673, 4628.43188287714, -1.0682859215676195e-10] | | pmom_h0b[.., 0, 10] | [-1273126.2724884835, 55585.89184040811, -2.254358687222148e-9] | | pmom_lprot[.., 10] | [-1369069.625327538, 59333.735563465045, -2.36118727937891e-9] | | | | | tmp_vec | [89979.12573566216, -452011.2188342586, -248942.84544012396] | | pmom_h0b[.., 1, 10] | [1422330.1493642807, -9454670.27374079, -5253335.786885787] | | pmom_lprot[.., 10] | [143239.64977240493, -9847347.757011585, -5502278.632325914] | | | | | tmp_vec | [89979.12573566235, -452011.21883425827, 248942.8454401244] | | pmom_h0b[.., 2, 10] | [1422330.149364284, -9454670.27374078, 5253335.786885795] | | pmom_lprot[.., 10] | [1655548.9248723513, -19754029.249586623, 5.820766091346741e-9] | fortran | pmom_lprot[.., 10] | [10065.17, -880.5881, 0.0] | | ------------------- | --------------------------------------- | | tmp_vec | [-106008.5, 4628.433, -1.0682862E-10] | | pmom_h0b[.., 0, 10] | [-1273126., 55585.91, -2.2543594E-09] | | pmom_lprot[.., 10] | [-1369070., 59333.75, -2.3611879E-09] | | | | | tmp_vec | [89979.14, -452011.3, -248942.9] | | pmom_h0b[.., 1, 10] | [1422330., -9454672., -5253337.] | | pmom_lprot[.., 10] | [143239.8, -9847349., -5502280.] | | | | | tmp_vec | [89979.14, -452011.3, 248942.9] | | pmom_h0b[.., 1, 10] | [1422330., -9454672., 5253337.] | | pmom_lprot[.., 10] | [1655549., -1.9754032E+07., -0.1093750] | **pmom_h0b[2,11]** pfrc_prot 有问题 pfrc_prot - Partial force at the teeter pin (point P) due to the rotor [-] pfrc_s0b - Partial force at the blade root (point S(0)) due to the blade [-] pfrc_prot[.., dof] += rt_hs.pfrc_s0b[.., K, dof] ## 切换双精度后:依然出现 plin_vel_ec 10, 0, 0有问题 Partial linear velocity (and its 1st time derivative) of the hub center of mass (point C) in the inertia frame (body E for earth) [-] rt_hs.pmom_lprot 2, 10 差两倍 ```fortran RtHSdat%PMomLPRot(:,p%DOFs%PCE(I)) = TmpVec2 - p%Hubg1Iner*CoordSys%g1*DOT_PRODUCT( CoordSys%g1, RtHSdat%PAngVelEH(p%DOFs%PCE(I),0,:) ) & - p%Hubg2Iner*CoordSys%g2*DOT_PRODUCT( CoordSys%g2, RtHSdat%PAngVelEH(p%DOFs%PCE(I),0,:) ) ``` g1 [2]差2倍 MomBNcRtt有差距,导致右端项算的不对 frc_vgn_rtt mom_ngn_rtt frc_prot_t - Portion of the force at the teeter pin (point P) due to the rotor associated with everything but the QD2T()'s [-] frc_s0bt - Force at the blade root (point S(0)) due to the blade (excluding QD2T components) [-] ## 问题 - Fortran 与rust加和 趋于0的结果 精度不同 Fortran e-5 rust e-11 - Fortran写到txt文本的数值,读进rust有少许差异 # qt是如何推进的,1961有没有问题 qdt误差很小,qt误差大 这里很奇怪 前一步qdt -> qt