기계공학(Mechanical Engineering)/열전달(Heat Transfer)

방정식 수치해법 [엑셀 연립방정식풀이 Gauss seidel feat 열전도방정식]

졸업마렵다 2022. 10. 23. 18:54
반응형

 

안녕하세요

이번에는 열전달에서 많이 사용되는 수치해법 중 하나인 Gauss seidel 에 대해 알아보도록 하겠습니다

만약 아래와 같은 미지수가 15개인 15차 연립방정식이 있다면 손으로 푸는것은 가능은 하겠지만...

저는 절대 못합니다.

(4차만 되더라도 정신병걸릴거 같아서....)

이 때 사용하는 방식이 Gauss seidel 입니다.

matlab을 사용하신다면 inv(A)를 통해 이 방식보다 훨씬 쉽게 풀 수 있지만 matlab이 없다면

엑셀로 풀 수 있는 방식이 Gauss seidel입니다.

이론은 이전의 값을 현재식에 대입하여 다시 구하고 이 방식을 반복하여 이전값과 현재의 값의 차이가 설정해놓은

오차 이내에 들어오면 해로 판정하는 방법입니다.

이론은 아래와 같은데 간단한걸 어렵게 표현한 식입니다.

그냥 이전값(처음에는 초기값을 임의로 설정)을 방정식에 대입해서 나오면 나온값이 이전값이되고 다시 방정식에 대입 이런 걸 계속 반복하면 됩니다.

 

방법은 매우 간단합니다.

 

1. 위의 식에 맞게 이전의 셀을 식에 넣어주면 됩니다

T1의 식

 

 

 

.

2.이후 드래그를 통해 생성

 

3. Error는 보고싶은 값 (저는 T1을 기준으로 [Error=Abs(Tn+1-Tn)/Tn] 식을 만들었습니다)

이 식을 보시면 아시겠지만 이전의 값이 현재 값과 얼마나 다른가 비율로 나타내는 식입니다.

 

4.결과(저는 Error를 0.0001보다 작으면 표기되도록 조건부 서식에서 설정했습니다.

 

 

 

 

 

 

반응형