목록내가 공부한 옥타브(매틀랩) (24)
공머씨의 블로그

오일러의 방법을 이용해서 1계미분방정식의 해를 구하는 것이 목적입니다. 1계 상ㅁ분 방정식의 해를 수치적으로 (컴퓨터를 이용해 구하는 방식중 하나인) 구하는 가장 기본적인 방법인 오일러 method에 대해 공부합니다. 오일러방법은 1계상미분 방정식의 초기치 문제에 대한 해를 수치적으로 구하는 방법입니다. y(x)가 해인데 y(x)의값을 x1, x2, x3 ... 이런 x의 값을 x0부터 시작해서 x의 값이 h만큼 늘어납니다. 함숫값 yx1 yx2 yx3를 정확히 구할 수는 없고, 그것의 근삿값을 구할 수 있게 됩니다. 순차적으로 구할 수 있습니다. 먼저 초기조건 x=x0 일때 y0는 문제에서 주어져 있습니다. 이 점에서 접선의 방정식을 구해본다면, (그 점에서의 기울기를 사용하고) x1의 함숫값을 구하고..

매트랩을 이용하여 제1계 상미분 방정식의 방향장을 그려보는 연습을 해보겠습니다. 방향장? 그 각점 x,y에서 미분방정식의 해가 있을텐데 그 그래프의 해의 접선을 다 구했을때 그 접선의 기울기를 각 점마다 나타낸것을기울기의 장이다. 다른 말로는 방향장이라고 합니다. 방향장을 보면 해의 모양을 이은것 같은 모양이라는 것을 추측할 수 있습니다. 방향장을 x,y평면에 어떻게 나타내냐 접선을 그리되 겹치지 않도록 아주 짧은 부분만 (선소)그려서 쭉 나열하면 그것이 방향장이 됩니다. y 전기장? 장? Field 이런 아이디어를 구현하려면 손으로 일일히 그리기가 힘들기 때문에, 프로그램을 이용하여 그리는것이 오늘의 목표입니다. 매트랩함수 중에서quiver이라는 함수가 있는데 이 함수를 이용해서 방향장을 그려보고자 합..

지난 포스트에서 다뤘던 함수의 함수에 이어서 공부하겠습니다. function function에 대해 복습해보겠습니다. 매트랩 내장함수에서 함수를 인자로 전달받는 함수에는 fplot fminbnd fzero integral 이정도가 있습니다. 복습 삼아서 각각에 대해 훝어보도록 하겠습니다 . fplot란 함수의 핸들과 x의범위를 입력으로 받아서 함수의 그래프를 주어진 범위에서 그리는 내장함수 입니다. 예를 들면 fplot를 사용해서 계산 하려면 , 주어진 것 처럼 익명함수로 아래 코드와 같이 f1()이라는 함수를 정의합니다. @표시는 익명함수를 정의한다는뜻, ()안에는 함수의 인자-독립변수, 그 오른쪽에는 함수의 내용 과 같은 식으로 저장을했습니다. 이렇게 저장하면 f1이라는 변수는 함수의 핸들을 뜻하게 ..

먼저 익명 함수란, (Anonymous function) 현재의 작업공간안에서 함수를 정의하는 방법입니다. m파일에 따로 사용자 함수를 저장하지 않고 함수를 만드는 방법 이라고 생각하면 될 것 같습니다. (??) 익명 함수의 정의 방법은 아래 그림과 같습니다. 먼저 @ 표시가 익명 함수라는 뜻이고 @ 다음 () 안에 콤마로 연결한 문자가 인자들입니다. (함수에 쓰이는 변수들) 함수의 핸들은 함수의 이름이 되는 것입니다. (정의한 함수를 다룰 때 함수의 이름을 입력해서 사용할 수 있으므로 함수의 이름=함수의 핸들이라고 생각하면 될 것 같습니다.) '그 함수는 어떤 계산을 하는 함수냐' 에 대한 함수의 정의가 오른쪽에 나옵니다. 이 명령을 사용하고나면 myf라는 함수를 사용할 수 있게 됩니다. 간단한 익명 ..

파일 입출력을 다루는 방법에 대해서 공부하겠습니다. save명령과 load명령을 사용해서 실습을 해보겠습니다. m파일과는 다른 기능인데요, (m파일은 matlab script 저장 파일) command window에 어떤 변수들을 아래와 같이 입력했습니다. 잠깐 저장을 하고 싶다면 save명령어를 사용해서 저장하면 됩니다. save mydatafile 위와 같이 하면 저장이 됩니다. mydatafile의 script를 직접 눈으로 볼순 없지만 Filebrower을 보니 저장이 되었음을 볼 수 있습니다. 옥타브를 껐다가 켜면 WorkSpace에 저장된 변수가 없음을 알 수 있습니다. File Browser에는 파일이 그대로 있는 것도 볼 수 있습니다. 파일에 저장한 뒤 저장한 변수를 불러오기 위해서는 lo..

이번에는 매트랩에서 사용자 정의 함수를 만들어서 사용하는 방법에 대해 공부해보겠습니다. 지금까지 우리가 사용한 함수는 내장 함수 (Bulite-in function)입니다. 옥타브 , 매트랩 프로그램 안에 미리 저장되어있던 함수들입니다. 23. 다음 예제는 사용자 정의 함수를 정의하고 호출해서 사용하는 방법을 설명하는 코드입니다. 매트랩, 옥타브에서 사용자 정의 함수는 반드시 fuction이라는 키워드로 시작되고 myfunc라는 함수 이름은 마음대로 정하시면 됩니다. 괄호 안에 들어있는 것은 함수의 인자입니다. y=x^2; 은 리턴 값을 저장하는 저장하는 변수입니다. x라는 인자를 받으면 제곱하는 기능의 함수입니다. 이런 함수를 만든 다음 파일 이름으로 저장합니다. 항상 함수 이름과 m파일의 이름이 같아..

if와 for의 의미에 대해서는 이미 c언어에서 공부했으므로 잘 알고 있을 것이라고 가정하고 설명합니다. 약간의 문법 차이에 유의하면 됩니다. 단계별로 쪼개서 기본적인 틀을 만들고 상세한 내용을 추가하는 접근방법을 가지면 쉽게 작성할 수 있습니다. 1번에선 정수값을 입력하는 코드를 작성하면 됩니다. 2,3,4번은 n값에 따라서 서로 다른 일을 합니다. 무슨 일을 하는지에 대한 디테일은 빼고 입력된 n값에 따라서 분기하는 모습만 틀을 잡아서 하면 됩니다. 일단 아래와 같이 보고 따라 해 봅니다. input함수에 대해 설명하면 작은따옴표 안의 메시지를 화면에 비추고 사용자가 입력한 숫자를 변수 n에 저장합니다. disp함수는 작은따옴표 안의 메시지를 화면에 내보내고, 따옴표 문자와 다른 것을 덧붙이려면 대괄..

12. 3차원 그래프 그리기 plot3 함수로 3차원 곡선 그래프 그리는 것부터 공부하겠습니다. 인자로 3개의 벡터를 필요로 하는데 plot 하고자 하는 점들의 x, y, z좌표의 값들을 각각 저장해 놓아야 합니다. plot3(x, y, z) 명령은 벡터 x, y, z의 좌표값들이 나타내는 점들을 3차원 공간에 plot 하고 그 점들 사이를 매끈한 곡선으로 연결해서 선 그래프를 그립니다. 명령 창에서 다음 명령어를 한 줄씩 실행하면서, plot3 함수의 사용법을 익혀봅시다. Figure window화면은 다음과 같습니다. 위와 같은 x, y, z축의 좌표가 생성되었고 좌표 (0,1,1)에 'o'가 찍힌 것을 볼 수가 있습니다. 네 번째 인자는 점의 모양을 나타냅니다. 13. 두 번째 명령을 입력해보겠습니..