주요 콘텐츠

정사각 판의 진동

이 예제에서는 단순 지지된 3차원 정사각 탄성판의 진동 모드와 주파수를 계산하는 방법을 보여줍니다. 판의 크기와 물질 속성은 NAFEMS에서 발표한 표준 유한요소 벤치마킹 문제인 FV52에서 가져왔습니다. 참고 문헌을 참고하십시오.

먼저, 모드 구조 해석을 위한 femodel 객체를 만들고 판의 지오메트리를 포함시킵니다.

model = femodel(AnalysisType="structuralModal", ...
                Geometry="Plate10x10x1.stl");

면 레이블을 포함하여 지오메트리를 플로팅합니다.

pdegplot(model.Geometry,FaceLabels="on", ...
                        FaceAlpha=0.5);

Figure contains an axes object. The axes object contains 6 objects of type quiver, text, patch, line.

강철의 탄성 계수, 푸아송 비, 물질 밀도를 지정합니다.

model.MaterialProperties = ...
    materialProperties(YoungsModulus=200e9, ...
                       PoissonsRatio=0.3, ...
                       MassDensity=8000);

이 예제에서 유일한 경계 조건은 4개의 모서리 면에서 z 변위가 0이라는 것입니다. 이러한 모서리 면에는 1에서 4까지의 레이블이 있습니다.

model.FaceBC(1:4) = faceBC(ZDisplacement=0);

메시를 만들고 플로팅합니다. 판 두께당 한 행의 요소가 있도록 목표 최소 모서리 길이를 지정합니다.

model = generateMesh(model,Hmin=1.3);
figure 
pdemesh(model);
title("Mesh with Quadratic Tetrahedral Elements");

Figure contains an axes object. The hidden axes object with title Mesh with Quadratic Tetrahedral Elements contains 5 objects of type quiver, text, patch.

퍼블리시된 값과의 비교를 위해 기준 주파수(단위: Hz)를 불러옵니다.

refFreqHz = [0 0 0 45.897 109.44 109.44 167.89 193.59 206.19 206.19];

지정된 주파수 범위에 대해 문제를 풉니다. 상한은 최고 기준 주파수보다 약간 높게 정의하고 하한은 최저 기준 주파수보다 약간 낮게 정의합니다.

maxFreq = 1.1*refFreqHz(end)*2*pi;
result = solve(model,FrequencyRange=[-0.1 maxFreq]);

주파수(단위: Hz)를 계산합니다.

freqHz = result.NaturalFrequencies/(2*pi);

최저 10개 모드에 대해 기준 주파수와 계산된 주파수(단위: Hz)를 비교합니다. 최저 3개 모드 형상은 판의 강체 운동에 대응합니다. 그 주파수는 0에 가깝습니다.

tfreqHz = table(refFreqHz.',freqHz(1:10));
tfreqHz.Properties.VariableNames = {'Reference','Computed'};
disp(tfreqHz);
    Reference     Computed 
    _________    __________

          0      1.1519e-05
          0      1.4056e-05
          0      2.3608e-05
     45.897          44.887
     109.44          109.78
     109.44          109.81
     167.89          168.64
     193.59          193.74
     206.19          207.46
     206.19          207.49

계산된 주파수와 퍼블리시된 주파수가 잘 일치합니다.

0이 아닌 최저 주파수 모드 7개에 대해 해의 세 번째 성분(z 성분)을 플로팅합니다.

h = figure;
h.Position = [100,100,900,600];
numToPrint = min(length(freqHz),length(refFreqHz));
for i = 4:numToPrint
    subplot(4,2,i-3);
    pdeplot3D(result.Mesh,ColorMapData=result.ModeShapes.uz(:,i));
    axis equal
    title(sprintf(['Mode=%d, z-displacement\n', ...
    'Frequency(Hz): Ref=%g FEM=%g'], ...
    i,refFreqHz(i),freqHz(i)));
end

Figure contains 7 axes objects. Hidden axes object 1 with title Mode=4, z-displacement Frequency(Hz): Ref=45.897 FEM=44.8867 contains 5 objects of type patch, quiver, text. Hidden axes object 2 with title Mode=5, z-displacement Frequency(Hz): Ref=109.44 FEM=109.779 contains 5 objects of type patch, quiver, text. Hidden axes object 3 with title Mode=6, z-displacement Frequency(Hz): Ref=109.44 FEM=109.814 contains 5 objects of type patch, quiver, text. Hidden axes object 4 with title Mode=7, z-displacement Frequency(Hz): Ref=167.89 FEM=168.645 contains 5 objects of type patch, quiver, text. Hidden axes object 5 with title Mode=8, z-displacement Frequency(Hz): Ref=193.59 FEM=193.736 contains 5 objects of type patch, quiver, text. Hidden axes object 6 with title Mode=9, z-displacement Frequency(Hz): Ref=206.19 FEM=207.456 contains 5 objects of type patch, quiver, text. Hidden axes object 7 with title Mode=10, z-displacement Frequency(Hz): Ref=206.19 FEM=207.487 contains 5 objects of type patch, quiver, text.

참고 문헌

[1] National Agency for Finite Element Methods and Standards. The Standard NAFEMS Benchmarks. United Kingdom: NAFEMS, October 1990.