'linear regression'에 해당되는 글 1건

  1. 2015.03.29 :: EES간편사용법(23)-curve fitting 4
ees관련 2015. 3. 29. 01:35

 안녕하세요 깡입니다

요새따라 블로그에 올리는 내용이 좀 일관성이 없긴 하네요

그래도 이번에 학생들이 레포트 때문에많이 물어보는 부분이 있어서 이것부터

써 볼까 합니다.

이번에 얘기 할 내용은 curve fitting 입니다.

실험을 하거나 하면 data를 구하는 경우가 생기고 그 경우 data를 통해서

식을 도출하는 경우도 생깁니다.

그래서 그 경우에 대해서 설명을 할까 합니다.

 우선 이건 제가 지난학기 수치해석 수업 들었을때 레포트로 나온 data 입니다.

과목이 수치해석이다 보니까 기능을 안 쓰고 직접 문제를 풀어봤드라죠

뭐 어차피 오늘은 수치해석 기법은 언급을 하지 않을 예정입니다.

curve fitting은 parametric table , lookup table , array table 다 가능합니다.

온 학생들에게는 lookup table 위주로 가르쳐 줬는데 array table 이 좀 더

나을것같아서 array table 로 설명을 할까 합니다.

 보기와 같이 저렇게 입력하면 됩니다, array table 사용법은

앞에 duplicate 절을 보면 더 자세히 알 수 있을겁니다.

solve 를 누른 화면입니다. 엑셀과 똑같이 정리가 되었죠?

 table 을 어떤 방법으로든 만들었으면 이제 table - linear regression 을 누릅니다

 보기와 같은 창이 나오게 됩니다

table은 아마 한개만 작업시 자동으로 그 table 이 선정이 됩니다.

 오른쪽이 독립변수 , 왼쪽이 종속변수입니다.

그리고 클릭을 하면 아래와 같은 식이 나오게 되는것을 알 수 있습니다.

앞 포스팅 어딘가서도 얘기한 적이 있지만

독립/ 종속 변수를 잘 잡아야겠죠?

 polynomial order 를 3으로 올린 그림입니다

최고차항의 계수가 3으로 증가한 식이 나오게 됩니다.

우리는 여기서 x를 독립변수 y를 종속변수로 잡은 상태입니다.

fit 을 누르면 식이 나오고 fit 버튼은 copy로 바뀌어집니다.

 copy된 파일을 붙여넣기 한 화면입니다.

약간의 수정을 해줍시다.

 y[i] x[i] 를 y_1 , x_1으로 바꾸었습니다.

 그럼 이번엔 table 을 새로 작성할 시간입니다.

 x_1 , y_1를 넘겨준 뒤 ok 를 눌러줍시다.

 보기와같은 table 이 나옵니다.

자세한 설명은 앞 포스팅을 참조하시길 바랍니다.

 x 변수에 1~10까지를 입력한 상태입니다.

 그리고 solve table 메뉴 혹은 재생버튼을 누르면 다음과 같이 계산이 됩니다.

 이제 그래프를 그려줄 차례입니다.

우선은 원값을 먼저 그래프를 그릴까합니다.

 table 메뉴에 arrrays table 을 체크하고 x 축 y축 변수를 지정해 줍니다.

 원값은 점으로만 표시하는게 좋겠죠?

symbol 을 적당히 넣고 line 을 None로 체크해 줍니다.

 원값이 plot 되어있는 모습입니다.

이제 curve fitting을 해볼까합니다.

 원래 있던 그래프에서 겹쳐 그릴것이므로 overlay plot을 누릅니다.

 계산값은 parametirc table 에서 뽑아올 것이므로

table 체크를 한 뒤에 변수를 지정해줍니다.

 보기와같이 파란색 실선으로 fitting 된 curve가 나오게됩니다.

3차식으로 근사했었죠

 plot 메뉴 자체에도 curve fit 이 있긴 합니다.

 식의 방식을 정할 수 있고 나머지는아까와 비슷하다고 생각하면 됩니다.

변수 쌍을 잘 생각해서 찾고 fit을 누릅니다.

보기와 같이 식이 뜸을 알 수 있습니다.

그대로 plot 을 누르면 plot에 새로운 선이 하나 나오고, 식까지 나옴을 알 수 있습니다

그리고 copy equation to clipboard 로 식을 복사할 수도 있습니다.

data 처리에 대한 문제에는 이런기능을 이용하면 되지 않을까 합니다.

마지막으로 살짝 사족을 달면

EES 는 ...특히 열역학에서 쓰이는 정도는 쉬우니까 포기하지 말고 하면서

자신이 쓸 수있는 프로그램 목록에 올려두면 좋지 않을까 합니다.

 

posted by 스카이깡깡
: