张书俊(张书俊) 14:38:44 36个参数计算代码如下,其中m_dKax,m_dKtr,m_dKtor分别为轴向刚度 、横向刚度、扭转刚度,m_dLength为补偿器长度。 m_matKe(0,0) = m_dKax; m_matKe(1,1) = m_dKtr; m_matKe(2,2) = m_dKtr; m_matKe(3,3) = m_dKtor; m_matKe(4,2) = -m_dKtr*m_dLength/2; m_matKe(4,4) = m_dKbs; m_matKe(5,1) = m_dKtr*m_dLength/2; m_matKe(5,5) = m_dKbs; m_matKe(6,0) = -m_dKax; m_matKe(7,1) = -m_dKtr; m_matKe(7,5) = -m_dKtr*m_dLength/2; m_matKe(8,2) = -m_dKtr; m_matKe(8,4) = m_dKtr*m_dLength/2; m_matKe(9,3) = -m_dKtor; m_matKe(10,2) = -m_dKtr*m_dLength/2; m_matKe(10,4) = m_dKtr*m_dLength*m_dLength/6; m_matKe(11,1) = m_dKtr*m_dLength/2; m_matKe(11,5) = m_dKtr*m_dLength*m_dLength/6;; // m_matKe(6,6) = m_dKax; m_matKe(7,7) = m_dKtr; m_matKe(8,8) = m_dKtr; m_matKe(9,9) = m_dKtor; m_matKe(10,8) = m_dKtr*m_dLength/2; m_
matKe(10,10) = m_dKbs; m_matKe(11,7) = -m_dKtr*m_dLength/2; m_matKe(11,11) = m_dKbs; for(j=0; j<12; j++) { for(i=0; i<j; i++) { m_matKe(i,j) = m_matKe(j,i); } } 也就是根据轴向刚度 、横向刚度、扭转刚度,计算出单元刚度。 计算出的矩阵是对称的,估计就是GLIF所需要的36个参数。
|