Please login with a confirmed email address before reporting spam
Posted:
5 years ago
Aug 1, 2019, 10:49 a.m. EDT
Updated:
5 years ago
Aug 2, 2019, 1:57 p.m. EDT
I just found this article "Fundamental Eigenfrequency of a Rotating Blade" and realized it includes the same error I encountered: "Notice the crossing modes, which are misinterpreted because of the sorting of the natural frequencies."
So I wonder if there is a way to resolve this misinterpretation. Is there a way to set the result of eigenfrequencies by the order of original matrix or eigen mode indices, not the magnitude of eigenfrequency?
- I just realized that this is not possible since there is no such mode index, and each mode is defined by displacement field which is not a fixed value.
I just found this article "Fundamental Eigenfrequency of a Rotating Blade" and realized it includes the same error I encountered: "Notice the crossing modes, which are misinterpreted because of the sorting of the natural frequencies."
So I wonder if there is a way to resolve this misinterpretation. Is there a way to set the result of eigenfrequencies by the order of original matrix or eigen mode indices, not the magnitude of eigenfrequency?
* I just realized that this is not possible since there is no such mode index, and each mode is defined by displacement field which is not a fixed value.
Henrik Sönnerlind
COMSOL Employee
Please login with a confirmed email address before reporting spam
Posted:
5 years ago
Aug 13, 2019, 2:15 a.m. EDT
Updated:
5 years ago
Aug 13, 2019, 2:12 a.m. EDT
Hi,
What you are looking for is often called 'mode tracking'. This is actually far easier for the human eye than for a computer.
The idea is that you form an inner product by integrating two modes against each other. Since modes (for the same parameter) are orthogonal, you can expect that they are 'almost orthogonal' for close parameter values. That is, the inner product of two modes is either rather close to 1 (same mode) or rather close to 0 (not same mode)
The level of difficulty depends on for example the type of parameter you are varying. In the Rotating Blade example you refer to it is rather straight forward. The following expression can be used to form a numbering:
sum(k*round(abs(intop1((withsol('sol3',u,setind(lambda,k,Omega,1))*withsol('sol3',u,setval(lambda,lambda,Omega,Omega))+withsol('sol3',v,setind(lambda,k,Omega,1))*withsol('sol3',v,setval(lambda,lambda,Omega,Omega))+withsol('sol3',w,setind(lambda,k,Omega,1))*withsol('sol3',w,setval(lambda,lambda,Omega,Omega)))*solid.rho))),k,1,6)
Here, intop1() integrates over the whole structure, and mass matrix scalign of the modes is assumed.
The effect can be seen in the attached plot.
Regards,
Henrik
-------------------
Henrik Sönnerlind
COMSOL
Hi,
What you are looking for is often called 'mode tracking'. This is actually far easier for the human eye than for a computer.
The idea is that you form an inner product by integrating two modes against each other. Since modes (for the same parameter) are orthogonal, you can expect that they are 'almost orthogonal' for close parameter values. That is, the inner product of two modes is either rather close to 1 (same mode) or rather close to 0 (not same mode)
The level of difficulty depends on for example the type of parameter you are varying. In the Rotating Blade example you refer to it is rather straight forward. The following expression can be used to form a numbering:
sum(k\*round(abs(intop1((withsol('sol3',u,setind(lambda,k,Omega,1))\*withsol('sol3',u,setval(lambda,lambda,Omega,Omega))+withsol('sol3',v,setind(lambda,k,Omega,1))\*withsol('sol3',v,setval(lambda,lambda,Omega,Omega))+withsol('sol3',w,setind(lambda,k,Omega,1))\*withsol('sol3',w,setval(lambda,lambda,Omega,Omega)))\*solid.rho))),k,1,6)
Here, intop1() integrates over the whole structure, and mass matrix scalign of the modes is assumed.
The effect can be seen in the attached plot.
Regards,
Henrik