검색어 입력폼

수치해석 연습문제 풀이 6장 발표자료

저작시기 2009.07 |등록일 2009.07.02 파워포인트파일MS 파워포인트 (ppt) | 37페이지 | 가격 1,200원

소개글

한양대학교 기계공학부 수치해석 연습문제 풀이입니다

목차

없음

본문내용

#include<stdio.h>
#include<math.h>
#include <fstream.h>
float f(float y,float t); //y의 도함수 계산함수
float exact(float t); //엄밀해 계산함수
void main()
{
float t=0,h=0.1;float k1,k2,k3,k4,y,ey;
float y0=1,error;int i; FILE *fout;
fout=fopen("Output.txt","w"); //출력 파일 OPEN
fprintf(fout," t 엄밀해y(t) 수치해y(t) 오차(%%)\n");
for(i=0;i<50;i++)fprintf(fout,"-");
fprintf(fout,"\n %3.2f\t%7.6f\t%7.6f\t%7.6f\n",t,exact(0),y0,t);
for(t=0;t<10;t+=h)
{
k1=h*f(y0,t); //k1계산
k2=h*f(y0+k1/2,t+h/2); //k2계산

k3=h*f(y0+k2/2,t+h/2); //k3계산
k4=h*f(y0+k3,t+h); //k4계산
y=y0+(k1+2*k2+2*k3+k4)/6; //수치해 계산
ey=exact(t+h); //엄밀해 계산
error=fabs(((ey-y)/ey)*100);
fprintf(fout," %3.2f\t%7.6f\t%7.6f\t%7.6f\n",t+h,ey,y,error);
y0=y; //초기값에 계산된 새로운값 입력
}
fclose(fout);
}
float f(float y,float t)
{
return(2*sin(t)+cos(t)-y);
}
float exact(float t)
{
return(0.5*(3*exp(-t)-cos(t)+3*sin(t)));
}

참고 자료

없음
다운로드 맨위로