It is useful to know how to normalise magnitude and phase from a mode shape so that it can be compared directly with a laser vibrometer measurement. This can be done in a few basic steps using the data command:
- Convert displacement data from real/imaginary to magnitude/phase
- Convert voltage data from real/imaginary to magnitude/phase
- Use #get command to obtain magnitude and phase values for normalisation
- Convert to displacement per volt
- Correct phase variation between displacement
The resulting output is the model geometry displayed with a colour scale relating to the values of displacement for a drive signal of 1 V:
These displacement measurements can then be easily scaled for different drive signals.
Example Code
data
/* Convert X Disp from real/imag to mag/phase
polr shap/xdsp:r1 shap/xdsp:i1 to shap/xdsp:m1 shap/xdsp:p1
polr shap/ydsp:r1 shap/ydsp:i1 to shap/ydsp:m1 shap/ydsp:p1
/* Convert voltage data from real/imag to mag/phase
polr shap/pize:r1 shap/pize:i1 to shap/pize:m1 shap/pize:p1
/* Get voltage mag and phase value for normalisation symb #get { valmpz1 } array shap/pize:m1 1 1
symb #get { valppz1 } array shap/pize:p1 1 1
/* Convert to displacement/volt
math shap/xdsp:m1 = { shap/xdsp:m1 } / $valmpz1
math shap/ydsp:m1 = { shap/ydsp:m1 } / $valmpz1
/* Correct phase variation between displacement
math shap/xdsp:p1 = { shap/xdsp:p1 } - $valppz1
math shap/ydsp:p1 = { shap/ydsp:p1 } - $valppz1
end
/* Plot Mode Shape measured in Y Displacement/Volt
grph
nvew 1
pset sttl '1MHz - Y Displacement/Volt Plot'
plot shap/ydsp:m1
end