라플라스 방정식은 아주 유명한 2차 편미분 방정식 중의 하나이다. 라플라시안 연산자는 n차원 공간에서 잘 정의된 어떤 함수 f를, x로 두번, y로 두번, ... 등등 같은 방향으로만 2번 미분하여 그 편도함수들을 모두 더한 함수로 보내는 연산자이다.

라플라시안 연산자를 L이라고 하자. 그럼 L[f] = 0 을 만족하는 함수 f를 찾는 것이 라플라스 방정식을 푸는 방법이다. 만약 1차원 라플라스 방정식이라면, 이 문제는 2번 미분해서 0이 되는 함수이므로 직선의 방정식을 찾으면 되고, 직선을 유일하게 결정하기 위해서 이 직선이 지나는 점 2개를 결정하면 된다는 사실을 알 수 있다.

2차원 라플라스 방정식이라면, 이제 문제가 심각해 진다. 가장자리가 점이 아니라 곡선이 된다. 심지어 n차원 라플라스 방정식이라면 n-1차원의 초곡면이 가장자리를 이루게 된다. 이것을 어떻게 풀 것인가?

일단, 적어도 하나의 해가 있다고 가정하자. 그냥 있다고 치자. 그럼, 만약 어떤 라플라스 방정식에 대해서 2개의 해를 찾을 수 있을까? 가령 f와 g가 둘 다 라플라스 방정식의 해라고 하자. 그럼 L[f]=0이고 L[g]=0이다. 라플라시안 연산자는 선형 연산자이므로 당연히 L[f-g]=0이 성립한다. 그런데 f-g=h라고 가정해보자. f와 g는 완전히 임의의 함수이므로 경계를 포함한 모든 점에서 h=0일 수밖에 없다. 따라서 f=g이다. 우리가 해를 여러가지 방법으로 찾아도, 주어진 경계조건을 만족하는 해는 하나밖에 없다는 걸 알 수 있다. 다시 말해서, 수단과 방법을 가리지 않고 하나를 찾으면 그게 바로 정답이라는 것이 확실하다. 이에 대한 엄밀한 증명은 생략한다.

그렇다면, 이것을 어떻게 컴퓨터로 풀 것인가?

이에 대해서 Relaxation method라는 것이 있다. 라플라스 방정식을 통째로 가우스 적분 하게 되면, 그 내부에서의 함수값이 그 주변에서의 함수값들의 평균값과 같아지는 성질을 이용한 것이다. 즉, 모든 점에서 라플라스 방정식이 만족될 때 까지 계속해서 평균을 내면서 진행하는 것이다.

가령, 격자를 9칸으로 잘라서
123
456
789
라고 해 보자. 그럼, 5번에 해당하는 값 f[5] 는 모르니까 처음에 0이라고 하자. f[2]=1, f[4]=5, f[6]=3, f[8]3이라고 해 보자. 그럼, 만약 저 9칸의 공간에 주어진 함수 f가 라플라스 방정식을 만족한다면, f[5]=3이어야만 한다. 그리고 그렇게 찾아낸 f[x]는 반드시 그 라플라스 방정식의 해이다. 수단과 방법을 가리지 않고 어떻게든 찾아내기만 하면 되니까. 이 방법을 더 큰 공간으로 확장해서 풀게 되면 문제를 잘 풀 수 있게 된다. 이 방법을 반복적으로 적용해서, 경계조건으로 주어진(=정해진) 값들은 계속 고정시켜 놓고서, 나머지 부분의 값들을 계속해서 평균을 내면서 바꿔가다보면, 경계조건의 값이 사방으로 퍼져 나간다. 하지만 충분히 여러번 반복하다보면, 거의 값이 바뀌지 않는 정도로 수렴하게 되는데, 이때가 바로 "답"이 된 상태이다. 이제 함수값들을 잘 읽어다가 "정답"이라고 생각하면 된다. 모든 점에서 "근처값들의 평균과 그 안에 있는 함수값이 같은" 상태가 되었기 때문에, 이 상태는 라플라스 방정식을 만족하는 상태이다.

그리고 앞에서 말했듯이, 아무튼 답을 찾기만 하면 그 답이 정답이 맞다.

http://tutorial.math.lamar.edu/Classes/DE/LaplacesEqn.aspx
http://rugth30.phys.rug.nl/potentiaal_eng/relaxatiemethode_hoe.htm

답을 찾기 위해 수단과 방법을 가리지 않는 것이 바로 수학의 정신이랄까.
by snowall 2011. 6. 10. 01:33