This document outlines the basic steps required to determine the acoustic impedance at a given point inside an open-closed pipe, using LMS Sysnoise in conjunction with MATLAB. Note that the majority of operations done in Sysnoise can be accomplished by entering commands either directly into Sysnoise's command-line input window, or by running a .cmd file (like a batch file) from Sysnoise. This can automate any operation in Synoise, and drastically reduce the amount of time required to run multiple simulations. However, certain operations such as selecting a surface may be easier to accomplish graphically. Sysnoise has a command history window which keeps track of all the commands entered, so a command accomplished via the GUI can be recreated by taking note of the corresponding command recorded in this window.
The script pipemesh.m will create a NASTRAN format 2D mesh called “pipemesh.dat” which can be imported into Sysnoise. Sysnoise will also accept the IDEAS, ANSYS, FREE and USER-DEFINED mesh formats. This particular script creates an axisymmetric mesh of an open closed pipe of radius 0.02 m and length 0.5 m. “pipemesh.m” is a good starting point for anyone using Matlab to do their meshing, or to see how a NASTRAN format mesh can be generated.
Create New Modelat the startup menu, or if the startup window does not open by default, select
File→Import, specify the data type as 'Mesh' and the format as 'Nastran'. Click
Fileboxand find and select 'pipemesh.dat' in the path where it was saved.
Geometry→Check Meshand select
Element Normal Vector Correctionto ensure a consistent direction for each element's normal.
Geometry→Reverse Elements, and enter 'All' in the text input box, and click OK.
Geometry→AxiSymmetryand enter a refinement of 6.
Inquire→Fmaximumand enter the number of mesh elements you want per wavelength (we used 40). The echo window will then report up to what frequency this number of elements per wavelength holds.
Model→Vibrating Panels→Manual, set
Positive. In the input box next to Real/Imag, enter 0.001 (the real value) and leave the adjacent box (imaginary value) blank.
Box Selecttool to select only the closed surface of the pipe without selecting the elements on the rest of the cylinder's surface. Click Add to finalize the condition and close the menu. This results in a positive (i.e. in the direction of the normal) boundary condition of real value 0.001 at the input end.
Geometry→Sets→Envelope Generation, specify the
Set Numberas 1 and write in the
Take the Envelope:field
Model→Free Edgesto specify a jump pressure of real value 0 and imaginary 0 (default). Specify the 'Where' field as
Set 1, click
Geometry→Field Point→Pointand specify the location of the field point as
X:0.0001 Y:0.5 Z:0and click
Add. This will place the probe at the open end of the pipe. For axisymmetric solving, the probe cannot be directly on the y axis, hence the x value of 0.0001 which puts the probe slightly off centre. This should not skew the results since we are concerned here with planar waves.
Analysis→Solveand specify the frequencies for which it will be solved, for example
0 to 4110.0 LinStep 5, which means every 5 Hz from 0 to 4110 Hz. This may take quite a while to solve.
Analysis→Process Field Pointsand set the
Point Selectionto '1'.
Results, specify the frequency as '0 to 4110.0 LinStep 5', hit
RFBUFFERSIZEvar in environment variables (under
Tools) to be greater than number of results.
Postprocess→Response Function, select
Results, click on
Results Point 1, change the field to
Impedanceand the direction to
0 1 0and click
Apply. The default is linear magnitude.
Pointand enter 1 as the point number, change
Impedanceand the direction vector to
(0 1 0). Click
Write, use the default type
Response Functionand enter a name for the function and a filename for the output file.
Postprocess→TableFunctionand now all the results are viewable (this is due to a bug in either Sysnoise or the X-Windowing system).