Matlab 강의상위 메뉴MATLABMATLAB이란' MATrix LABoratory ' 수치계산 및 결과의 가시화 기능을 제공하는 프로그램.M - 파일매크로 파일로서 해석기( interpreter ) 방식.M - 파일을 사용 : 특정한 해를 구하는데 필요한 응용 프로그램들을 손쉽게 작성.M-파일 작성 : MATLAB Command Window에서 file에서 new > M-file을 선택한다.그러면 이 나오는데 그곳에 프로그램을 입력한후메모장 창에서 파일> 저장하기를 선택후 원하는 디렉토리를 찾아간다.그런 후 파일 이름에서 파일 이름을 치고 꼭 확장자를 m이라고 쓴다.파일 형식은 텍스트 문서를 모든 파일로 꼭 바꾼 후에 저장을 누른다.Ex> a=10;b=2*a;c=(a/3+b)/9M-file에 위의 문장을 입력 후 파일명.m으로 저장 ( 주의 : 파일 형식은 꼭 모든 파일로 )MATLAB Command Window로 가서 디렉토리를 찾는다.cd : 작업하는 디렉토리를 변경할 때cd directory : 현재 디렉토리에서 특정한 곳으로 바꿀 때cd .. : 현재 디렉토리에서 상위의 곳으로 바꿀 때dir : 현재의 디렉토리에 있는 파일의 목록을 리스트할 때delete : 파일을 지울 때실행 : 원하는 디렉토리에 가서 저장한 파일명을 입력후 Enter를 누른다.M - 파일들을 응용 분야별로 모아 놓은 "도구 상자(toolbox)"가 있으며 이것을 이용하여 응용 프로그램을 손쉽게 작성할 수 있다.Ex ) 신호 처리 , 제어계의 설계 , 동적계의 모사 , 계의 규명 , 신경 회로망 등MATLAB 의 명령창(1) FileNEW - M-file : 프로그램 작성Open M-file : 파일 열기Run M -file : M 파일의 이름을 입력하여 실행Print ... : MATLAB에서 작업한 것을 printExit MATLAB : 작업 종료(2) EditCut : 오려내기Copy : 복사Paste : 붙이기Clear Session : 작업중의 모든 명령어들을 삭제(3) Options- Numeric FormatShort( default) : 소수점 아래 4자리까지 1/3 = 0.3333Long : 소수점 아래 14자리까지 1/3 = 0.*************3Hex : 16진수 표기 1/3 = 3fd5555555555555Bank : 달러, 센트 소수점 아래 2자리까지 1/3 = 0.33Plus : 부호(양,음) , 0 만 표시 1/3= +Short e : 부동소수점에 따라 소수점 아래 4자리까지 1/3 = 3.3333e-001Long e : 부동소수점에 따라 소수점 아래 4자리까지1/3 = 3.*************33e-001Rational : 분수 형태로 표시 1/3 = 1/3(4) heipIndex : 도움말 제공 사전식 제공도움말 기능help : MATLAB에 관한 도움말Ex> " help , " help matfunlookfor : 원하는 단어를 포함하는 모든 함수들을 나열Ex > " lookfor convolution행렬 연산 및 조작법" a=[1 2 3 4 5 6 ; 7 8 9 10 11 12 ; 13 14 15 16 17 18 ; 19 20 21 22 23 24 ]a =1 2 3 4 5 67 8 9 10 11 1213 14 15 16 17 1819 20 21 22 23 24" a'ans =1 7 13 192 8 14 203 9 15 214 10 16 225 11 17 236 12 18 24" a(3:-1:2,:)ans =13 14 15 16 17 187 8 9 10 11 12" a(2:3,6:-2:2)ans =12 10 818 16 14" x=1:6x =1 2 3 4 5 6" y=1:0.2:2y =1.0 1.2000 1.4000 1.6000 1.8000 2.0000" zeros(a)This usage of zeros(X) is obsolete and will be eliminatedin future versions. Please use zeros(size(X)) instead.ans =0 0 0 0 0 00 0 0 0 0 00 0 0 0 0 00 0 0 0 0 0" ones(a)This usage of ones(X) is obsolete and will be eliminatedin future versions. Please use ones(size(X)) instead.ans =1 1 1 1 1 11 1 1 1 1 11 1 1 1 1 11 1 1 1 1 1" eye(a)This usage of eye(X) is obsolete and will be eliminatedin future versions. Please use eye(size(X)) instead.ans =1 0 0 0 0 00 1 0 0 0 00 0 1 0 0 00 0 0 1 0 0" c=[1 2 ;6 7]c =1 26 7" d=1:5d =1 2 3 4 5" e=6:-1:2e =6 5 4 3 2" d.*eans =6 10 12 12 10" d./eans =0.1667 0.4000 0.7500 1.3333 2.5000" d'*eans =6 5 4 3 212 10 8 6 418 15 12 9 624 20 16 12 830 25 20 15 10" eig(c)ans =-0.58268.5826" fft(c)ans =7 9-5 -5빈 행렬원소가 하나도 존재하지 않는 빈 행렬>> x=[ ]x=[ ]임의의 행렬 중에서 특별한 행이나 열을 제거하는데 효과 적인 방법" a=[1 2 3 4 ; 5 6 7 8 ; 9 10 11 12]a =1 2 3 45 6 7 89 10 11 12" a([2 3],:)=[ ]a =1 2 3 4특별한 행렬compan - 동반행렬다항식 X3-7x+6의 근은?" p=[1 0 -7 6]p =1 0 -7 6" a=compan(p)a =0 7 -61 0 00 1 0" eig(a)ans =-3.00002.00001. 0000배열 연산연산자 앞에 점( . )을 찍음으로써 배열 연산 또는 원소 대 원소의 연산을 나타낸다.a.*b , a./b , a.bc.f ) 행렬의 연산 : a*b , a/b원소간의 거듭제곱 : .^" x=[1 2 3];" y=[2 3 4];" z=x.^yz =1 8 81작업 공간에 대한 정보작업 공간에 어떠한 변수 들이 있는지 알기 위해" who : Your variables are:a p yans x z" whosName Size Elements Bytes Density Complexa 3 by 3 9 72 Full Noans 3 by 1 3 24 Full Nop 1 by 4 4 32 Full Nox 1 by 3 3 24 Full Noy 1 by 3 3 24 Full Noz 1 by 3 3 24 Full NoGrand total is 25 elements using 200 bytes수학 함수abs(x) : 절대값 exp(x) : 지수 함수 sqrt(x) : 제곱근log(x) : 자연 대수 log10(x) : 상용 대수real(x) : 실수부를 얻을때imag(x) : 허수부를 얻을 때conj(x) : 켤레 복소수삼각 함수sin(x) cos(x) tan(x)sinh(x) cosh(x) tanh(x)asin(x) acon(x) atan(x)- 적분사다리꼴 적분z = trapz(x,y)그리기 (그래픽)plot : 선형 배율의 그래프를 그려준다.loglog : x 축과 y축 모두를 대수 배열(log scale)에 맞추어semilogx : x축은 대수 배율 , y축은 선형 배율semilogy : x축은 선형 배율 , y축은 대수 배율title : 그래프의 제목xlable : x의 이름ylable : y의 이름grid : 눈금 격자 표시선의 형태와 색상y : 노란색 m : 자홍색 c : 하늘색 r : 빨간색 g : 녹색b : 파란색 w : 흰색 k : 검정색. : 점 (.) o : 원 표시 x : x- mark * : star-mark + : plus-mark - : 실선 : : 점선 -. : 일점 쇄선 - - : 단선선 추가 : 'hold' 라는 명령어 사용 hold on , hold off< 연 습 > Sine , Cosine 그래프를 그려보자." magic(6)ans =35 1 6 26 19 243 32 7 21 23 2531 9 2 22 27 208 28 33 17 10 1530 5 34 12 14 164 36 29 13 18 11" a=magic(3);" plot(a)그물 격자 그래프meshgrid : 3차원 표면으로 구성된 그물 격자3차원 그래프를 그리기 위해 x와 y의 배열을 생성[x,y]=meshgrid(1:3);z=x.^2+y.^2mesh(z)compass : 원점에서 방사되는 화살표" x=randn(3);" y=randn(3);" compass(x,y)## 함수의 함수 ##function y=sincf(x)( 프로그램 내용 )returnsincf.m으로 저장.< 연습 > Sinc function을 M-file로 만들어 보자…그래서 Sinc function을 불러서 그래프로 그려보자.
「디젤기관의 성능 및 배기 배출물 특성에 관한 실험」1. 실험목적내연기관은 열을 기계적인 일로 바꾸는 대표적인 열기관으로, 비교적 소형이면서 고출력을 얻을 수 있기 때문에, 모터 사이클, 자동차, 선박, 항공기 등 폭넓게 이용되고 있다. 자동차용으로서는 가솔린기관 및 디젤기관이 주류를 이루고 있지만, 디젤기관 자동차는 대기오염의 주원인 매연 및 질소산화물의 배출량이 많기 때문에, 사회적으로 문제시 되고있다. 그러나 가솔린기관과 비교하여 디젤기관 자동차는 연비와 출력면에서 우수하기 때문에, 미래에 예상되는 연료사정의 악화에도 충분히 대응할 수 있다고 생각된다.본 실험에서는 디젤기관의 기본적인 동력특성, 흡입공기량, 연료소비량, 배기 배출물 특성 및 연소특성을 조사하고, 운전조건에 따라 어떻게 변화하는가, 또는 이 들의 성능 사이에 어떠한 관계가 있는지에 대하여 실험을 하고, 그러한 상호인과관계에 대해서 고찰한다.2. 실험 내용 및 이론적 배경차량용 내연기관 성능시험에서는 엔진을 동력계에 직결하고 각종의 필요한 계측기를 구비하여 규정된 방법에 따라 시험을 행하는 방법과 실차를 대상으로 하는 동력계로 실제 주행과 똑같은 조건하에서 엔진의 성능과 배가기가스의 분석을 행하는 방법 등이 주로 사용되고 있다.본 실험에서는 엔진을 동력계에 직결하여 엔진의 성능을 평가하는 방법을 이용한다. 아래에 내연기관의 성능을 평가하기 위한 각종 측정항목들에 대해 설명한다.2.1 출력성능기관의 출력성능은 일정한 실린더 체적 내에서 일정량의 연료를 연소시켜 얻어지는 일량, 즉 출력의 대, 소에 의해 그 우열이 판단된다. 그러나 이 기관출력은 기관의 종류나 운전조건에 따라서 다르다. 그러므로 이것을 구별하기 위해서는 기관의 출력이 어떤 종류인가를 반드시 명시해야한다. 자동차용기관은 사용되는 출력 및 회전속도가 함께 변화하기 때문에 정격출력이라고 칭할 수 없다.한편 출력을 측정할 때는 기관의 조건, 즉 보조기류를 어느 정도 결합시켜 운전하는가에 따라서 출력치가 다르게 측정된다. 엔진의 경우 힘` 흡입된 ``급기의 ``체적{{ v}_{h } = 행정체적``,`` {G }_{s }=흡인된`` 급기의`` 중량``,`` { r}_{ s} = 비중량2.3.2 공기과잉율습도와 온도 변화에 따른 흡입공기량의 변화는 1차적으로 공기과잉율의 변화로 이어지는데, 공기과잉율은 연료 1kg에 대하여 실제로 공급한 공기량을 L라 하고 이론적 공기량을 Lo라면 다음식으로 표시할 수 있다.{공연비 = {단위시간당`` `소비되는`` `공기중량 } over {단위시간당``` 소비되는``` 연료중량 }{lambda = { L} over { {L }_{o } } = { {AF }_{actual } } over { { AF}_{stoich } } = { 1} over { PHI }{lambda`` :`` 공기과잉율,`` {AF }_{actual }``:```실제 공연비, { AF}_{stoich }``:``이론적 공연비,``` PHI`` : ``당량비2.5 각부의 온도기관 및 각 부위(배기관, 스크러버 입구, 냉각수 탱크, 윤활유)의 온도는 K형 열전대 (ø3 mm)를 이용하여 계측한다.2.6 배기 특성디젤기관에서는 공기를 기관의 실린더 내에 흡입, 압축시키고 연료를 분사펌프에 분사하여 자연착화를 일으켜 연소시키는 압축 착화 연소방식을 이용한다. 이 때의 공연비는 보통 17:1 이상의 희박 연소이므로, 산소가 충분한 상태에서 연소가 일어나 CO 및 HC의 배출은 가솔린 기관에서보다 적으나, NOx의 배출은 상대적으로 많게 된다. 또한 연료로 사용하는 경우는 가솔린보다 고비등점 탄화수소 성분이 많고 황화합물도 약 10배 이상이다. 이러한 이유로 입자상 물질의 배출이 많고, 또한 벤조피렌(Benzopyrene)과 같은 발암성 물질이 다량 함유되어 있다. 디젤기관에서 배출되는 유해 물질 중에서 CO, HC, NOx 및 PM이 다량 함유되어 있다.2.6.1 CO의 생성 원리CO는 주로 산소가 부족한 불완전 연소일 때 다량 발생한다.2C + O2 → 2CO기관에 공급되는 혼합가스의 공연비에 터여지에 포집한 모든 물질을 의미하고 주로 연료나 윤활유의 불완전연소에 의하여 발생된다.디젤기관의 입자상물질은 보통 용해성물질(Soluble Organic Fraction : SOF)과 비용해성 물질(Insoluble Organic Fraction : IOF)로 나눌 수 있으며, 이것은 기관의 작동조건에 따라 영향을 많이 받는다. 낮은 온도에 의한 미연소, 부분연소 및 윤활유에 의해서 발생되는 불완전연소물이고 비 용해성 물질은 대부분이 고부하시에 발생하며, 이 경우에는 연료가 과다하기 때문에 주로 탄소로 구성되어 있다.입자상물질의 생성과정은 연료의 열분해, 핵생성, 성장, 흡수 및 응고 등의 과정을 거쳐 형성된다.2.7 연소 특성실린더내 압력 측정을 위해 1번 실린더의 연소실에 압전식(Piezo-electric type) 압력변환기(Kistler 6061B)를 설치하였으며, 센서의 최대 압력 측정범위는 50∼100bar가 적당하고 사용자 여건에 따라 200bar 까지도 가능하다. 압력변환기로부터의 신호는 전압 증폭기에 의해 증폭되고, A/D 변환기와 컴퓨터에 의해 압력변화를 데이터화하였다.2.7.1 도시평균유효압력(imep : indicated mean effective pressure)엔진의 p-V선도 또는 지압선도로 둘러싸인 면적은 가스가 피스톤에 행한 지시일이다. 도시평균유효압력(Pi)은 실린더의 크기 및 개수, 그리고 엔진의 속도에 상관없이 단위 행정체적당 도시출력을 나타내는 척도이다.Pi : {{매회```기계적```사이클에서```실린더당```도시출력`[N·m]} over { 실린더당```행정체적`[ { m}^{3 }] }2.7.2 제동평균유효압력(bmep : brake mean effective pressure)동력계에서 측정되는 엔진의 출력은 도시출력보다 더 중요하다. 따라서 아래와 같은 식으로 제동평균유효압력(Pb)을 정의한다.Pb : {{매회```기계적```사이클에서```실린더당```제동출력`[N·m]} over { 실린더당```행정체적`[ { 즉시 연소가 일어나지 않으며, 압력도 압축선 이상으로 상승하지 않는다. 연료가 실린더내에 분사된 후 연소가 시작될 때까지 연료가 증발하는 데 요구되는 시간을 의미한다. 이 기간이 디젤기관의 성능 및 배출가스에 큰 영향을 미치게 된다.2) 예혼합연소기간(premixed combustion phase)착화지연기간 동안 분사된 연료가 공기와 혼합되어 한 곳 또는 여러 곳에서 일시에 발화를 일으켜서 급격한 압력상승을 동반하며, 연소가 진행되는 기간이다. 연료의 분사량과 증발 및 확산속도 등에 영향을 받게 된다.3) 제어연소기간(mixing-controlled combustion phase)압력상승률이 감소하는 시기부터 최고압력 발생점까지의 기간을 말한다. 점화지연기간 동안에 예혼합된 연료가 모두 연소되고 나면, 이후 분사된 연료는 연소실의 연소환경에 의하여 그 연소율을 제어할 수 있게 된다. 이 기간에 연소율을 지배하는 것은 주로 연료증기와 공기의 혼합과정이며, 액상연료의 무화, 증발, 공기와의 혼합, 화염면의 화학반응 등이 관계하게 된다. 여기서 열발생률이 다시 최고치에 다다를 수 있으며, 연소과정이 진행되면서 감소하게 된다.4) 후기연소기간(late combustion phase)분사가 종료된 후에도 미연소된 연료가 연소되는 기간으로, 팽창행정 동안 열발생이 계속되는 기간이다. 혼합기 분포가 불균일하고 국부적인 산소부족으로 적은 양의 연료가 연소되지 못하고, 검댕이나 과농연료의 연소 생성물 형태로 존재하게 되며, 이로 인해 열발생이 계속된다.3. 실험장치본 실험에 사용되는 동력계는 와전류 타입으로 시험용 엔진은 동력계와 직결된 상태로 엔진의 회전수나 부하를 변화시켜 설정된 실험조건으로 실험을 행한다. 실험에 사용된 기관은 수냉식, 4기통, 와류실식의 4행정 디젤기관으로 국내에서 생산되는 자동차용 디젤기관을 사용하였고, 주요제원은 Table 1과 같다. 본 실험에서 사용되는 실험장치의 구성도는 Fig. 2에 나타낸다.{ItemSpecificationMaker Mod부위(배기관, 스크러버 입구, 냉각수 탱크, 윤활유)온도는 K형 열전대(ø 3 mm)를 이용하여 계측하였으며, 또한 기관에서 배출되는 배기가스의 적절한 공급과 매연제거장치로 설치로 인한 기관배압의 영향이 최소화할 수 있도록 송풍기를 스크러버의 배기 쪽과 서지탱크의 입구에 연결하고, 기관의 흡기측에는 서지탱크를 설치하여 신기와 재순환 가스의 혼합이 잘 이루어지도록 하였을 뿐만 아니라 맥동현상을 줄일 수 있도록 하였고, 자동차용 에어필터를 라미너유량계 앞에 설치하여 신기 흡입시 실차상태와 동일한 공기흡입이 가능하게 하였으며, 혼합공기(신기+재순환배기)의 온도 및 습도를 계측할 수 있도록 디지털식 온·습도계를 설치하였다.본 실험에서는 기관에서 배출되는 배기 배출물 측정을 위해 매연미립자는 광 간섭식 매연측정기로 측정하였고, 다른 배기 배출물은 배기가스분석기(KM-9006)를 사용하여 측정하였다.{ Fig. 2 Schematic of experimental apparatus for a test engine4. 실험방법4.1 조작방법1) 동력계의 조작동력계 냉각용 냉각수 순환 밸브를 조작하여 동력계에 냉각수가 순환되도록 하고 냉각수의 순환 상태를 확인한다.2) 시험엔진 및 엔진 주변장치 확인1 시험엔진의 연료상태 확인2 시험엔진에 냉각시스템이 설정되어 있을 경우 냉각탱크에 부착되어 있는 냉각수 순환용 밸브를 조작하여 엔진 냉각수 지시계로 설정한 온도가 되었을 때 냉각수가 자동으로 순환 되도록 한다.3 시험엔진의 스로틀이 아이들 상태가 되도록 한다.4 시험엔진의 압력센서가 설정되어 있을 경우에는 압력센서 냉각용 냉각수 밸브를 조작하 여 냉각수의 순환 상태를 확인한다.5 시험엔진이 정상적인 상태로 되어 있는가를 확인한다.3) 전원/냉각수/Grease 주입시간 등을 확인4) 동력계 Controller 작동1 동력계 Controller에 전원을 10분전에 입력하여 안정된 후에 시험이 되도록 한다.2 동력계 Controller에 전원을 입력3 동력계 본체 및 Controller다.
유동 가시화 장치1. 실험목적 및 개요유체역학에서 학습한 원통, 익형, 사각형 등을 통하여 흐르는 유동을 가시화 하는데 있다. 본 가시화 실험 장치는 학생들로 하여금 모델주위의 유동장을 관찰하고 층류와 난류의 상태를 관찰할 수 있게 하여 이상적인 흐름상태를 이해할 수 있게 한다. 또한, 실험부를 크게 하였으며 10개의 Sinks와 Sources를 결합하여 놓아 학생들로 하여금 쉽게 할 수 있게 제작되어 있다.2. 실험이론 및 이론식실제 유체의 흐름은 층류와 난류로 구분된다. 여기서 층류에서는 유체의 입자가 서로 층의 상태로 미끄러지면서 흐르게 되며, 이 유체의 입자의 층과 층 사이에서는 다만 분자들이 모두 열을 지으면서 질서 정연하게 흐르고 있는 상태를 층류라고 한다. 반면에 난류는 유체의 입자들이 아주 심한 불규칙한 운동을 하면서 상호간에 격렬하게 운동량의 교환을 하면서 흐르는 상태를 말한다. 이와 같이 실제유체의 흐름에 있어서 서로 판이하게 유동특성을 나타내는 층류와 난류의 구분은 레이놀드 數(Reynolds number)에 의해서 결정된다.레이놀드수는 무차원의 함수, 즉 레이놀드 數 Re을 다음과 같이 정의 하고 있다.{Re = {V`D` rho }over mu, 또는 {{VD}over nu여기서 V : 관 속에서의 流體의 평균속도D : 관의 직경ρ : 유체의 밀도μ : 유체의 점성계수υ : 유체의 동점성계수관류에 대한 여러 실험값을 종합하여 보면 레이놀드수 Re가 약 2100보다 작은 값에서 유체는 층류로 흐르고 , Re가 2100과 4000 사이의 범위에서는 불안정하여 과도적 현상을 이루며, 다만 레이놀드수 Re의 값이 4000을 넘게 되면 대략적으로 유체의 흐름은 난류가 된다.3. 실험장치 및 방법1) 실험장치 :□ 가시화 장치( Flow Visualization Table ). Dimension : (L)1350mm(W)800mm , (H)1150mm. Dye injection : 19 points. Materials : Acryl, PVC, Stainless Steel, Glass etc.. Working area : 605(W) 900(L)mm. Source Control V/V : 10 points. Sink control V/V : 10 points. Model : Aerofoil, Cylinder model, Divergent channel, Sudden Enlargement. Water Flow rate : 15L/min. Level foot : 4 screws for leveling. Adjustable weir plate : 20 mm. Drain Valve :25A, Brass2) 실험방법1. 유량공급 호스를 수돗물에 직접 연결한다. ( 단, 수돗물의 유량은 {150``l/min,압력 {1`` kg / cm^2이상일 것 )2. 배수호스를 배수구에 연결한다.3. 시험부의 레벨을 조절볼트를 사용하여 맞춘다.4. Sink 와 Source 밸브와 공급탱크와 배수탱크의 Drain V/V를 잠근다.5. 실험하고자 하는 모델을 상판유리를 주의깊게 들은 후 모델을 실험하고자 하는 부위에 설치한다.6. 유량 조절밸브를 조금씩 열면서 유량을 조절한다.7. 색소 벨브를 서서히 열어 색소의 흐름을 관찰한다.8. 유량 조절 밸브 및 색소 조절밸브를 조절하여 흐름을 층류상태로 맞춘 후 실험을 행한다.9. 실험을 반복하여 행하고 결과를 토의한다.4. 주의 사항- 본 실험장치의 상판은 강화유리로 제조되어 있으므로 충격이나 무리한 힘을 가하지 않는다.- 본 실험장치의 하판은 아크릴로 되어 있으므로 충격이나 무거운 물건을 올려놓지 않는다- 노즐은 주사위 바늘로 되어 있으므로 상해의 위험이 있으므로 주의한다.- 유량조절 시 상판위로 물이 흐르면, 관찰이 용이하지 못하므로 유량을 서서히 조절한다.5. 결과 및 고찰· 주입유체를 물과 비중을 가지는 유체를 사용한다.· 상판 안쪽 면에 물과 비중이 같은 아세톤을 바름으로써 공기방울 제거에 쉽다.· 장치의 평형상태를 유지한다.· 바늘에서 분출되는 유체의 압력을 일정하게 한다.· 바늘구멍이 막혀있는지 사전 점검한다.{{{ < 參朝 >※ 비점성 유체역학이란?제의 모든 유체는 마찰에 의한 점성을 가지지만, 이론적 전개나 문제의 단순화를 위해 점성을 무시하고 유체를 다루기도 한다. 이렇게 하면 지배방정식의 복잡한 점성항이 사라지고, 실제와 거리는 있지만 짧은 시간 안에 적은 노력으로 문제를 해결할 수 있다. 공학적 문제는 불필요한 노력과 시간의 낭비를 막기 위하여, 대상을 단순화해서 풀어봄으로써 통찰력을 얻은 후 필요한 만큼의 실제현상의 복잡성을 첨가하여 다시 풀어나가는 경우가 많다. 유체역학에서 이러한 목적에 부합하는 학문이 비점성 유체역학이며, 이는 문제의 단순화뿐만이 아니라 점성의 영향이 미미하거나 중요하지 않은 여러 가지 실제 경우에 그대로 적용이 가능하다.{{{※ 베르누이 방정식마찰이 없는 유동의 에너지식은 많은 경우 압력, 속도 및 높이 사이의 긴밀한 관계를 나타내며, 이를 나타내는 식을 베르누이 방정식(Bernoulli Equation)이라 한다. 이 식은 1738년 베르누이(Daniel Bernoulli, 1700∼1782)가 저술한 책에 문장으로 나타나 있었으며, 오일러(Leonhardt Euler, 1707∼1783)가 1755년에 이르러 완전한 식의 형태로 유도해 내었다.베르누이 방정식 :{베르누이 방정식은 유동의 에너지는 압력, 속도(운동에너지), 높이(위치에너지)의 합으로 이루어져 있으며 어느 한 개가 커지면 적어도 다른 하나가 작아짐을 의미한다. 물론 이 간단하고 강력한 방정식이 성립하는 유동영역은 한정되어 있으며 제약조건에 유의해야 한다. (참고 - 제약조건 : 시간에 따라 변하지 않는(정상유동), 비압축성, 비점성 유동이며, 외부로부터 일과 열의 전달이 없어야 한다.)아래 그림과 같이 좁아지는 노즐 형태의 유로에서의 유동은 속도가 빨라지며 압력이 낮아짐을 베르누이 방정식으로부터 알 수 있다. 이를 경험하기 위한 간단한 실험은 얇은 종이 한 장으로 해 볼 수 있다(얇을수록 잘된다). 얇은 종이를 너무 크지 않게 적당한 크기로 잘라서 입술 밑에 대고, 입김을 불면 종이가 딸려 올라와 수평을 유지하는 것을 볼 수 있다. 이것은 종이 위에 유체를 입김으로 가속시켜 속도가 증가하였고, 이로 인해 베르누이 방정식에 의하면 압력이 낮아지기 때문이다. 즉 종이 아래보다 종이 위가 속도증가로 인해 압력이 약간 낮아져 이러한 압력차이가 종이를 끌어올리게 되는 것이다. 종이는 위로 끌어 올라가다가 유동에 밀려 수행한 상태를 유지하게 된다.< 베르누이 방정식이 나타내는 의미와 종이를 이용한 간단한 실험 >{아래 그림과 같이 물체에 가까운 곳은 점성의 영향을 무시할 수 없기 때문에 비점성 유동의 해석이 성립하지 않는다. 그러나 비점성 가정으로도 충분하게 유동을 해석할 수 있는 부분도 여전히 넓은 영역을 차지함을 볼 수 있다.{< 비점성 유동 가정으로 베르누이 방정식이 성립하는 곳과 성립하지 않는 곳 >※ 양력과 익형이론비점성 유동 속에 있는 실린더가 회전한다면 어떤 일이 일어날까? 아래 그림의 오른쪽처럼 실린더가 돌게되면 실린더 아래의 유동은 빨라져 유선이 조밀해지고 압력이 낮아진다(베르누이 방정식을 기억하자). 반대로 실린더 위쪽의 유동은 속도가 다소 줄어들며 압력이 높아진다. 따라서 실린더 위, 아래의 압력차이는 실린더를 아래로 밀어낸다. 이렇게 유동 속에서 물체가 받는 부양력을 양력(Lift force)이라 한다. 이러한 힘을 실제 이용하려 했던 사람들이 Rhode Island 대학의 실험용 프레트너 로터 돛배(Flettner rotor sailboat, 1924년)를 만들었다. 사진의 배에 설치된 원통은 잔디깎는 기계의 모터를 이용해 돌릴 수 있었다. 투수가 커브를 던지는 기본적인 원리도 공을 회전시킴으로서 야구공의 양쪽의 압력이 차이나게 하는 것이다.
함수로써의 M-file의 사용M-file은 함수 파일로 쓰일 수 있다. 여러 줄의 명령을 수 차례 반복해야 할 때 함수 파일은 유용하게 쓰인다. 함수 파일은 C의 함수, FORTRAN과 BASIC의 부함수(Subroutine) 등과 비슷하다.function [ output variables ] = function_name(input variables);{주목적외부로부터 값을 입력받아서 어떤 연산을 수행한 후 다시 외부로 값을 반환해 주는 함수로써의 기능파일 명함수명과 같도록M-file의 구조function 출력인자=함수이름(입력인자)변수의 볍위global 변수의 경우M-file에서의 변수와 MATLAB Workspace에서의 변수 사이에 영역제한이 없다.local 변수의 경우M-file에서의 변수와 MATLAB Workspace에서의 변수는 서로 다르다.출력변수는 대괄호로 되어 있고 입력변수는 둥근괄호로 표시한다. function_name은 저장한 파일 이름과 같아야만 한다 ( .m 확장자를 갖는다.) 즉, 함수 이름을 minofunc 이라고 한다면 minofunc.m 파일에 저장해야만 한다. 함수는 명령라인에 그 이름(예를 들어 minofunc)을 입력함으로써 호출된다. 함수 정의 라인에 있는 function이라는 단어는 반드시 소문자를 사용해야 한다.%=====================================================% File Name : minofunc.m% Objective : 다중 입력을 받아서 다중 출력을 보내는 함수의 예제%=====================================================% 입력 : theta1, theta2, theta3% 출력 : y1,y2,y3,y4funtion [y1,y2,y3,y4]=minofunc(theta1, theta2, theta3)y1=sin(theta1*pi/180);y2=cos(theta2*pi/180);y3=tan(theta3*pi/180);y4=y1+y2+y3;n 개의 입력 (input1, input2, ..., input n)을 받아서 1 개의 출력(output1)을 보내는 함수의 경우에는 함수를 다음과 같은 형태로 선언해야 된다.function output1 = function name(input1, input2, ..., input n)>> a4=mimofunc(30,45,45) % y4를 a4가 받는다.a4=2.2071미분방정식 풀이{명령어설명[t,y] = ode23('ydot',tspan,y0)벡터 미분방정식 {dot y~ =~ f~(~t~,~y~)의 해.ydot는 함수 파일이고 입력은 t,y이고 출력은 열벡터 dy/dt이다.tspan은 독립변수 t의 시작과 글의 값은 마음대로 할 수 있으나 임의의 t의 중간값은 구해야 한다.[ t , y ] = ode23 ( 'ydot', t0, tf, y0 ]예제 1)함수 ode23과 ode45를 사용하여 그림을 그린다. 단, 정확해는 y(t)=1-cos(t)이다.{{ dy} over {dt } =sin~t함수 파일 :function ydot=sinefn(t,y)ydot=sin(t);WokrSpace :>> t_true=[0:0.01:4*pi];>> subplot(2,1,1)>> [t,y]=ode45('sinefn',[0,4*pi],0);>> y1_true=1-cos(t_true);>> plot(t,y,'o',t_true,y1_true),xlabel('t),ylabel('y'),...>> axis([0 4*pi -0.5 2.5]),gtext('ode45')>> subplot(2,1,2)>> [t,y]=ode23('sinefn',[0,4*pi],0);>> y2_true=1-cos(t_true);>> plot(t,y,'o',t_true,y2_true),xlabel('t'),ylabel('y'),...>> axis([0 4*pi -0.5 2.5]),gtext('ode23')예제2)RC회로의 모델은 다음의 그림에서 Kirchhof의 전압 법칙과 전하의 보존에서 찾을 수 있다.{RC { dy} over {dt } ~+~y~=~v(t)RC의 값을 0.1초라고 가정하자. 수치해석을 이용하여 초기 축전된 전압 y(0)=2volts이고 사용된 전압이 0일 때 자유응답을 찾고 정확해 {y(t)~=~2e^-10t와 결과를 비교하라.{{t0 = 0, 시간상수는 0.1이다. tf를 0.4초와 0.5초 사이를 정한다.풀이)회로에서의 방정식은{0.1 dot y ~+~y~=0##dot y ~=~-10y함수파일 :function ydot=rccirc(t,y)ydot=-10*y;WorkSpace :>> [t,y]=ode45('rccirc',[0,0.4],2);>> y_true=2*exp(-10*t);>> plot(t,y,'o',t,y_true),xlabel('Time(sec)'),ylabel('Capacitor Voltage')미분방정식 해를 찾는 명령어{{dy } over { dt} +2y=12{답 ~:~ y(t)=6+C_1 e^-2t초기조건과 경계조건{방정식 ~:~ { dy} over {dt }=sin(bt),~~~y(0)=0{답~:~y(t)= { 1-cos(bt)} over {b }Laplace 변환에 의한 미분방정식 풀이{프로그램의 순서1. 방정식에 미분을 포함한 심볼릭 변수를 정의한다. t의 함수로 정의되는 y(t)를 구한다.2. 대수방정식을 구하기 위하여 미분방정식에 Lplace변환을 정의한다.3. 변수 L에 대한 해의 변환인 방정식을 푼다.4. t의 함수와 같은 해를 구하기 위해 L의 역변환을 한다.Lplace 변환함수{명령어설명ilaplace(function)function의 역 Laplace 변환을 구한다.laplace(function)function의 Laplace 변환을 구한다.laplace(function,x,y)function의 Laplace 변환을 구한다. function은 x의 함수이고 Laplace변수 y의 항이다.라플라스 변환은 laplace(f) 를 사용한다. 다음의 방정식을 변화하면{f(t)~=~t^2 ~+~sin(at)~-~tcos(bt)ex1)syms t a bF=t^2+sin(a*t)+t*cos(b*t);>> 2/s^3+a/(s^2+a^2)+1/(s^2+b^2)*cos(2*atan(b/s))ex2){F(s)= { s} over {s^2 +6s+1 }역 변환 해보면-3/4*exp(-3*t)*2^(1/2)*sinh(2*2^(1/2)*t)+exp(-3*t)*cosh(2*2^(1/2)*t) 임을 알 수 있다.ex3)다음과 같은 2계 모델을 생각해보면방정식 : {ddot x + 1.4 dot x = f(t)X(s)의 풀이 : {X(s)= { x(0)s+dot x (0)+1.4(0)} over { s^2 +1.4s+1}자유응답 x(t) : {x(t)= ^-1 BMATRIX { { { x(0)s+dot x (0)+1.4(0)} over {s^2 +1.4s+1 } } }에 초기조건x(0)=2, {dot x (0)=-3을 적용하면{x(t)= ^-1 BMATRIX { { { 2s-0.2} over {s^2 +1.4s+1 } } }이 된다. matlab으로 풀어보자ex4)뉴턴 제 2 법칙을 사용한 스프링-질량 시스템초기조건 x(0)=0, {dot x (0)=0운동 방정식은 {m ddot x +kx=F(t)=F_o (1-e^-t )이며 라플라스 변환을 하면{(ms^2 +k)X(s)=F_o ({ { 1} over { s} }- { 1} over {s+1 } )~~,~~X(s)= { F_o } over {(ms^2 +k) } ({ { 1} over { s} }- { 1} over {s+1 } )이 된다.이제 미분 방정식의 해를 구하기 위해서 위 대수 방정식 X(s)의 역라플라스 변환을 ilaplace를 이용하여 구해보자.>> syms F0 m k s>> X=(F0/(m*s^2+k))*(1/s-1(s+1));>> x=ilaplace(X)따라서 구하고자 하는 운동방정식의 해 x(t)는 다음과 같다.{x(t)= { F_0} over {k } - { F_0 e^-t } over {k+m } - { F_0 m cos( SQRT { { k} over {m } }t )} over {k(k+m) } - { F_0 m cos( SQRT { { k} over {m } }sin (SQRT { { k} over {m } }t) } over {k(k+m) }만일 m, k, F0가 모두 1이면>> m=1;>> k=1;>> F0=1;시스템의 응답은 x(t)는 다음과 같고,>> x=subs(x)시간 t가 30가 될 때 까지의 x의 그래프를 그려보자.>> ezplot(x,0,30)숙제....1) 다음의 2차 방정식을 풀어라.{5 ddot y ~+~ 7 dot y ~+~4y~=~f(t)단 f(t) = sin t 라 가정한다.2) 추의 질량(m)은 무시할 정도로 작은 길이(L)이 1m 일 때 a) θ(0)=0.5rad과 b) θ(0)=0.8πrad인 경우에 대한 다음의 추의 운동 방정식을 MatLab을 이용하여 풀어라. 단. g=9.81 m/sec2 , {dot θ(0)=0이다.{ddot θ ~+~ { g} over {L }sinθ ~=~0{3) {m ddot x + c dot x +kx = F(t)=δ(t-2π)인 방정식을 라플라스를 이용하여 풀어라.m,c,k=1이고 x(0)=0, {dot x (0)=0이다.hint. a){δ(t-2π)= PMATRIX { { , ~~t=t_0 }#{0,~~t t_0 } }이며 δ(t-2π)를 라플라스 변환하면 {