반응형

 

 

http://fracton.khu.ac.kr/~comp/monte/monte.html

 

 

 

기본 수치 해석

Monte Carlo Integral 

목적: 1.Gaussian Quadrature 등으로부터 계산할 수 없는 적분 값의 추정
        2. 다중 적분(2 차원 이상의 적분)에 대한 처리 용이
        3. 흉내내기(전산 시늉:simulation)의 기본인 난수(random number)에 대한 이해

 

 1. Random Number(무작위수, 난수)란?

    주어진 구간에서 어떤 특정한 순서 없이 특정한 주기 없이 임의의 부분 구간에 들어갈 확률이 일정한 수들의 열.

    Random Number를 만드는 기본 Algorithm들

    i) computer 내부의 cmos clock을 읽는 방법: CMOS clock time을 일정한 간격으로 읽어서 초단위로 환산한다. 이 시간의 열을 
        이라하고, (0,1000) 사이의 난수열을 얻고 싶으면, 을 이용해 난수열 을 얻음.

   ii)middle-square method(von Neumann이 처음으로 제안)
       (0,1000) 사이의 난수열을 얻을려면, 처음에 0과 1000사이의 임의의 수를 seed로 한 다음 그 seed를 제곱하여 얻은 수의 가운데 3 자리 수를 
     난수열의 처음 수로 하고 이수를 다시 제곱하여 얻은 수의 가운데 3 자리 수를 다음 수로 하는 방법등을 계속하여 난수열을 얻음.
     예) 267(seed) -> 267^2=71829 -> 182(난수열의 첫 번째 수) -> 182^2 =33124 ->312(난수열의 두 번째 수) ->.....

  ii) n번째 난수를 , n+1번째 난수를 이라 했을 때 (0, m)사이의 난수열을 식

             

    을 이용해 얻는 방법.

      최종적으로는 i), ii), iii) 등의 방법으로 얻은 (0, m)사이의 난수열 을 이용해 본인이 원하는 구간 (a, b) 사이의 난수열은 수식

              

을 이용해 구할 수 있다.

    Pseudo Random Number와 seed
      아무리 좋은 algorithm을 사용해 난수열을 만들더라도, 언제 주기가 생기거나 또는 난수 자체가 반복하여 나타나거나, 특정한 부분 구간에 난수가 많이 모인다든지 하는 현상이 발생할 지 모른다. 이러한 의미에서 우리가 만든 난수열을 의사 난수(pseudo random number)열이라 부른다. 또 같은 난수 발생 algorithm을 반복해서 사용할 때, 나타나는 난수열은 seed(즉 난수열을 만들 때 도입하는 처음의 수)가 같으면 항상 같은 난수열이 만들어 진다. 따라서 어떤 난수열을 이용해 전산 시늉을 할 때, 이 전산 시늉을 반복해서 평균하여 결과를 얻는다면, 반복할 때 마다, 항상 다른 seed에서 출발헌 난수열을 사용하는 것이 좋다. 이러한 의미에서 seed를 흔히 전산시늉을 시작하는 시각을 초단위로 환산하여 사용하곤 한다.

    Visual Basic에서 Pseudo Random Number의 발생
      VB에서는 library function으로 난수 발생 함수를 제공하고 있다. 먼저 Seed를 random하게 제공하는 방법은

       "randomize"

라는 statement를 주면 된다. 만약 어떤 특정한 수를 seed로 주기를 원할 때에는

       "randomize(특정한 수)"
를 주면 된다. 만약 randomize만 주면 VB가 Timer함수를 이용하여 시각을 seed로 택하는 작업을 한다. Timer 함수는 자정에서부터 현재 시각까지의 시간을 초로 환산하여 준다. Seed를 randomize로 random화 시킨 후 난수 열을 얻는 방법은 "Rnd" statement를 이용하면 된다. "Rnd"는 구간 (0,1) 사이의 난수를 준다. 따라서 특정한 구간 (a,b)의 난수열을 얻는 방법은        

       a + (b-a)*Rnd

를 이용하면 된다.

    2. Monte Carlo Integral    

         를 난수열을 사용해서 계산하는 방법.

      Hit and Miiss Method

       

i) 가로가 (b-a), 세로가 h인 직 사각형을 그린다. 
ii) 구간 (a,b)안에 있는 난수 하나와, (0,h) 구간 안의 난수  하나를 발생시켜서 을 만족시키면 Hit 수를 하나 증가시키고, 아니면 Miss 수를 하나 증가시킨다.
iii) ii)의 과정을 충분한 횟수 N번 반복한다.

 그러면 적분 값은

        

로  추정할 수 있다.

 

    Important Sampling Method
구간 (a,b)안에 있는 난수를 충분한 횟수 N 번 발생 시켜 그 난수 열을 
이라 하면 적분 값은 

                  

로 계산할 수 있다. 그 이유는 이 진정한 의미에서 난수열 이라면 N 이 매우 클 때 들이 구간 (a,b)에 골고루 분포할 것이며, 따라서 임의의 점이 차지하는 부분 구간의 범위가 (b-a)/N이 될 것이기 때문이다.

  3. Muilti-Dimensional Integral

다중 적분

              

와 같은 적분의 수치값은 단순히 일차원 적분의 algorithm을 이용하여 적분하기에는 매우 어려운 점이 많다. 특히 적분의 하한, 상한들이 일정한 값이 아니라, 등과 같이 다음에 적분 될 변수의 함수인 경우에는 특히 어렵다. 이럴 때 매우 용이하게 적분할 수 있는 방법이 바로 Monte Carlo Integral이다. 여기서도 importance sampling method를 이용하여 적분하는 방법은 다음과 같다. 구간 (a,b)안에 있는 난수를 충분한 횟수 N 번 발생 시켜 그 난수 열을 이라 하고, 구간 (c,d)안에 있는 난수를 충분한 횟수 M 번 발생 시켜 그 난수 열을 이라 하고, 구간 (e,f)안에 있는 난수를 충분한 횟수 L번 발생 시켜 그 난수 열을 이라 하면 적분 값은

               

              

으로부터 계산할 수 있다.

    4. 반복법(iteration method)과의 조화
     
  i) Monte Carlo 적분법에서의 정확도의 추정은 난수 발생 횟수와 적분 결과 값의 상관 관계를 구하면 된다. 가령 난수를 100 번 발생 시켰을 때의 적분 값이 9.576이고 1000 번 발생 시켰을 때의 적분 값이 9.432이고, 10000 번 발생 시켰을 때의 적분 값이 9.441이고, 100000 번 발생 시켰을때의 적분 값이 9.447이라면 적분 값이 소수점 이하 2 째자리까지 정확히 구하려면 적어도 난수를 10000 번이상 발생시켜야  적분 값이 제대로 나온다고 추정할 수 있다. 
      ii)인간이나 computer가 주는 한계 때문에 난수 발생횟수의 최대치가 N 번으로 한정된다면, N 번을 전부를 1 번의 적분 값 추정에 다 사용할 것이 아니라, 횟수를 k로 나누어 난수 발생 횟수가 N'=N/k인 Monte Carlo Intergral을 k 번하여 그 결과 적분 값을 평균하는 것이 더 정확하다. (즉 상대오차가  로 줄어들음.)
      따라서 i)과 ii)의 방법을 적당히 조화하는 것이 매우 중요함.

   5. Monte Carlo Integral의 구현

       이제 VB 프로그램으로 적분 값

             

Mpnte Carlo Integral하는 프로그램을 작성해 보자. 여기서는 Hit and Miss method를 사용해 보자. 먼저 이 프로그램을 run하는 과정의 form의 모양을 보면 다음과 같다.

         

이 그림은 Buffon의 바늘 떨어 뜨리기 프로그램을 구현할 때와 form과 비슷한 형태를 갖고 있다.  프로그램의 form file, project file 실행 file  각각MonInt.frmMonInt.vbpMonInt.exe와 같다. 
   이제 이 프로그램을 구체적으로 살펴보자. form의 control의 속성 중 Picture Box인 picResult안에 있는 모든 control은 
Buffon의 바늘 떨어 뜨리기 프로그램에서의 picResult안에 있던 control의 속성과 동일하므로 생략한다. 이제 나머지 control들을 위한 속성표를 작성해 보자.

      

   객체

 속성

 설정

 form

 Name
Caption
Back Color

frmMonInt
The Monte Carlo Integral
White

 label

Name

lblResult

 line

Name

linXax(x축)

 line

Name

linYax(y축)

 command

Name
Caption

cmdHitMiss
Hit, Miss

 command

Name
Caption

cmdImpo
Imp. Samp 

 command

Name
Caption

cmdExit
Exit

다음으로 프로 그램 code를 작성해 보자.

먼저 일반 선언부를 보면 변수를 모두 선언한다는 
Option Explicit
가 있고, 다음으로 난수 짝을 발생하는 총 횟수를 나타내는 전역 변수, gTotal과 그 중 hit한 수를 나타내는 gIn과 결과 적분 값의 4 배를 나타내는 Pi등이 전역 변수로 선언된다.
Dim gTotal As Long
Dim gIn As Long
Dim Pi As Double
 또 lblResult라는 label Box에 결과를 표시할 문자열 변수로 Info를 전역변수로 또 선언한다.
Dim Info As String

또 End Button을 click했을 때는 프로그램을 끝내는 procedure가 있다.
Private Sub cmdExit_Click()
End
End Sub

다음으로 프로그램이 시작되어 form이 뜰 때 gTotal과, gIn을 초기화 하는 프로그램은 다음과 같다.
Private Sub Form_Load()
gTotal = 0
gIn = 0
End Sub

다음으로 Hit and Miss를 구현하는 프로그램은 Hit, Miss라는 button을 click했을 때 시행되는데 그 source code를 이제 살펴보자.

Private Sub cmdHitMiss_Click()
먼저 필요한 변수들을 선언하고

Dim Count As Long
Dim CX, CY As Long
Dim Th As Double
Dim DX, DY As Double

좌표 중심을 원점으로 하는 반경 2000 twib인 1/4 원을 빨간색인 원을 그린다.
"circle (x,y), R, color, 시작 angle, 끝나는 angle"이라는 명령에서 시작 angle=0, 끝나는 angle=pi/2 = 1.5706으로 주면 1/4 원을 그리게 된다.
frmMonInt.Circle (linXax.X1, linXax.Y1), 2000, RGB(255, 0, 0), 0, 1.5706

다음으로 난수 발생의 seed를 바꾸고
Randomize
이제 난수 짝의 발생 횟수를 monitor하는 Count란 변수를 0으로 초기화 하고
Count = 0
Do While 구문을 이용하여 난수 짝을 10000 번 발생시켜 Monte Carlo Integral을 한다.
Do While Count < 10001
난수 발생 횟수를 하나 올리고
Count = Count + 1

이제 0 과 1 사이의 난수 두 개를 발생 시켜 각각 x(DX)와 y(DY)의 짝으로 한다.
DX = Rnd
DY = Rnd

다음으로 이 두수를 제곱하여 더하여 Th라 둔다.
Th = DX * DX + DY * DY

이제 난수 발생횟수를 하나 증가 시키고
gTotal = gTotal + 1

이 두수가 함수의 위에 찍히는 지 아래에 찍기 위해 그림에서 DX와 DY에 해당하는 위치 CX, CY로 구해 보자. 그림에서 반경 2000 twib이 실제 1로 환산되고, 원점의 x 좌표는 그림에서 linXax.X1이므로 CX는 
CX = Int(DX * 2000 + linXax.X1)
이 되고 같은 방법으로 
CY = Int(linXax.Y1 - DY * 2000)
이 된다. 이제 그림에 난수 발생으로부터 얻은 임의의 점이 주어진 함수 아래에 있는지 없는지를 판단하여 
If Th <= 1 Then
있으면 Hit 횟수를 하나 증가시키고
   gIn = gIn + 1
Hit한 표시로 QBColor(1)으로 점을 찍고
  frmMonInt.PSet (CX, CY), QBColor(1)
Miss했으면
Else
Miss한 표시로 QBColor(7)으로 점을 찍고 
frmMonInt.PSet (CX, CY), QBColor(7)
End If

Loop

이제 이런 일을 10000번 했을 때 마다 적분 값을 구하는데 우리가 생각한 가상의 4 각형의 넓이가 1이므로 구하는 적분 값은 1*gIn / gTotal인데 이 값을 4 배하면 Pi 값이 되어야 하므로
Pi = 4 * gIn / gTotal
와 같이 Pi값을 계산한다. 그 결과를 needle program에서와 비슷한 방법으로 picResult에 그림을 그리고, lblResult에 문자열로 표시한다.
picResult.Circle (gTotal / 100 + cyLin.X1, cxLin.Y2 - Int(720 * Pi / 3.141592)), 20, RGB(255, 255, 255)
Info = "던진 횟수 = " + Str(gTotal) + Chr(13) + Chr(10)
Info = Info + "Hit한 횟수=" + Str(gIn) + Chr(13) + Chr(10)
Info = Info + "Pi= " + Str(Pi)
lblResult.Caption = Info

End Sub

연습문제:1. 을 이용하여 pi값을 Monte Carlo Intergral의 Important Sampling Method를 이용하여 구하는 source code를 위의 VB프로그램 중 "Private Sub cmdImpo_Click()" procedure에 삽입하라.

             2. 반경이 1 인 균일한 구형의 강체 내부에 구의 중심과 일치하는 중심을 갖는 모서리의 길이가 1/2인 정육면체를 파 내었다. 이 때 파낸 정육면체의 한 대각선을 중심축으로 하여 이 모양의 관성 모우멘트를 Monte Carlo Integral을 이용해 구하라.


반응형
반응형

매트랩 사용법 참고

 

http://cafe.daum.net/cyberna

반응형
반응형

컴퓨터 대수학 시스템

위키백과, 우리 모두의 백과사전.

컴퓨터 대수학 시스템(Computer algebra system)은 수학 기호로 구성된 대수 구조를 해결하는 컴퓨터 시스템을 말한다.

[편집]내용

  • 기호와 함수로 구성된 대수 구조에 대해 연산
  • 집합, 행렬, 기하, 대수, 미적분, 해석함수, 통계, 증명과 검증, 수론 등의 대다수 수학적 대상물에 대해 자동화된 처리를 지원한다.

[편집]일반적으로 포함되는 기능

  • 자체 프로그래밍 언어와 IDE
  • 코드 에디터
  • 그래프, 도표, 테이블, 다이어그램의 표현
  • 외부 시스템에 연계할 수 있는 API
  • 소수점 이하를 자유롭게 지정하는 기능 (부동소수점 연산과 대비됨)
  • 다양한 수론 함수 지원 및 정확한 정수 표현 (부동소수점 형태로 표현하지 않음)
  • 수학 표현식 (적분, 극한, 행렬 등의 복잡한 수학 표현을 입출력)
  • 응용 수학, 물리학, 생물학, 화학 등에 관한 확장 패키지

 


 

 

비교 내용 :  http://en.wikipedia.org/wiki/Comparison_of_computer_algebra_systems

 

 

Comparison of computer algebra systems

From Wikipedia, the free encyclopedia

The following tables provide a comparison of computer algebra systems (CAS).

Contents

  [hide

[edit]General

SystemCreatorDevelopment startedFirst public releaseLatest stable releaseCost (USD)LicenseNotes
AlgebratorNeven Jurkovic198619992009 (4.2)$58.99ProprietaryElementary algebra; step-by-step solutions
AxiomTim Daly19712002May 2012Freemodified BSD licenseForked in 2007 to OpenAxiom andFriCAS
bergmanJörgen Backelin197219721999 (0.96)FreeGPL-style licenseNon-commutative and commutative Gröbner bases; mainly homogeneous and non-linear; Lisp-based
CadabraKasper Peeters200120072011 (1.29)FreeGPLtensor algebra, field theory
calcDave Gillespie ? ?in GNU emacs 23FreeGPLAdvanced calculator integrated in the Emacs editor. Supports a simple CAS and physical units.
ClassPad ManagerCASIO199920013.03 (2008)$45.45Proprietary
CASSIOPEIACASIO-MAPLE199720012001 (5.0)DiscontinuedProprietaryVersion of Maple 5 for CASSIOPEIA
CoCoAThe CoCoA Team198719952007 (4.7.3)FreeGPLFor polynomial calculations
DeriveSoft Warehouse19791988November 2007(6.1)DiscontinuedProprietaryOwned by TI; it was discontinued 2007
DoConSerge D. Mechveliani199319952.11Freenon-OSI approved licenseHaskell library
DCASRobert Fenichel ?20052005 (1.0)FreeGPL
EigenmathGeorge Weigt200420052010 (137)FreeGPLOS supported: Windows, Mac, Android, Poket PC, Nintendo DS[1]
Euler Math ToolboxR. Grothmann198719882011 (12.3)FreeGPLExtension of Maxima, symbolic and numeric computation, interval arithmetic
FermatRobert H. Lewis198619932010 (3.9.9x)$60 if grant money available, otherwise $0Proprietarypolynomials, matrices
FORMJ.A.M. Vermaseren198419893.3FreeGPLhigh speed, arbitrary size of expressions, multi-threaded
Franklin MathAllen Franklin Jordan20082009March 2011(0.11)FreeGPLSymbolic and numeric math, plotting, functions
FriCASWaldek Hebisch200720072012 (1.1.7)Freemodified BSD licenseForked from Axiom in 2007.
GAPGAP Group198619862008 (4.4.12)FreeGPLgroups, character theory, discrete mathematics
JACALAubrey Jaffer198919912010 (1c2)FreeGPLScheme-based
JasymcaHelmut Dersch200320062011 (3)FreeGPLAlgebra, Calculus, Polynomials, Matrices, graphing
jMathLab[2]Dr. S.Chekanov201120122012 (3)FreeGPLAlgebra, Calculus (based on Jasymca), Polynomials, Functions, Matrices, Probability, 2D/3D graphics
Java Algebra SystemHeinz Kredel200020052.0FreeGPL or LGPLCommutative and non-commutative, Gröbner bases, gcd, Java library
KANT/KASHKANT Group ? ?KASH3 (2005/2008)free for non-commercial useown licensealgebraic number theory
LiveMath
(formerly Theorist)
Math Monkeys ?19912007 (3.5.9)$149, $45 student (1 year)Proprietaryinteractive solving and graphing
Macaulay2Daniel Grayson and Michael Stillman199219942010 (1.4)FreeGPLalgebraic geometry, commutative algebra
MacsymaMIT Project MAC andSymbolics196819781999 (2.4)$500ProprietaryLisp-based. Continues as the open-source Maxima.
MagmaUniversity of Sydney~199019932011 (2.17)$1,150ProprietaryAlgebra, Cryptography, Group Theory, Number Theory
Magnus Computational Group Theory PackageThe New York Group Theory Cooperative1994 ?2009FreeGPLInfinite group theory
MapleSymbolic Computation Group, University of Waterloo198019842012 (16)$2,275 (Commercial), $2,155 (Government), $1245(Academic), $239 (Personal Edition), $99 (Student), $79 (Student, 12-Month term)[3]ProprietaryLibrary source code is viewable
MASHeinz Kredel, Michael Pesch1989 ?1998 (1.01)FreeunspecifiedModula-2 source code available
MathcadParametric Technology Corporation198519852010 (15)$1,195[4]Proprietarystandard mathematical notation, plotting, unit-aware calculations
MathEclipse/SymjaAxel Kramer200220022007FreeCPLJava symbolic computing library (uses JAS and Apache Commons-Math)
MathematicaWolfram Research198619882011 (8.0.4)$2,495 (Professional), $1095 (Education), $140 (Student), $69.95 (Student annual license) [5] $295 (Personal)[6]ProprietarySystem also includes extensive numeric capabilities, statistics, image processing, number theory, boolean computation and is a development environment.
MathinationOrion Math201020102010 (1.0)$4.99ProprietaryBasic algebra for the iPad, with a multi-touch interface to manipulate equations.
Mathiverse CalculatorMathiverse200920092009 (0.0.1)FreeProprietaryComplex number manipulation
MathomaticGeorge Gesslein II198619872012 (16.0.3)FreeLGPLElementary algebracalculus,complex number and polynomialmanipulations.
MathPiperTed Kosan, Sherm Ostrowsky200820102010 (.80n)FreeGPLSpecifically designed for use in education.
MathXpertMichael Beeson198519972008 (3.0.4)Algebra Assistant $49.95, Calculus Assistant $89.95[7]ProprietaryStep-by-step solutions, correct graphs, keeps track of assumptions for logical correctness of results.
MaximaMIT Project MAC and Bill Schelter et al.196719982012 (5.28)FreeGPLCommon Lisp-based full-featured CAS
meditorRaphael Jolly200020002.0_01FreeGPLJava symbolic computing library and math editor
Microsoft MathematicsMicrosoft ?20052011 (4.0.1108)FreeProprietaryElementary algebra and calculus; unit conversion; graphing; step-by-step solutions
MuMATHSoft Warehouse1970s1980MuMATH-83DiscontinuedProprietary
MuPADSciFace Software198920082008 (5.1)DiscontinuedProprietaryMathWorks has incorporated MuPAD technology into Symbolic Math Toolbox
NCAlgebra and NCGBHelton, deOliveira,Stankus,Miller199019912010 (4.0)FreeNCAlgebraBSDNon-commutative algebra inMathematica; NCGroebner Bases; block matrices
NCLabFEMhub201120122012 (1.0)FreeProprietaryWide range of symbolic and numerical methods including algebra, calculus, differential equations
OpenAxiomGabriel Dos Reis200720072011 (1.4.1)Freemodified BSD licenseForked from Axiom in 2007
PARI/GPHenri Cohen, Karim Belabas, Bill Allombert et al.198519902012 (2.5.1)FreeGPLNumber theoryelliptic curves,arbitrary-precision arithmetic
ReduceAnthony C. Hearn1960s19682009Freemodified BSD licenseopen-sourced and freed in December 2008
SageWilliam A. Stein200520052012 (5.3)FreeGPLIncludes extensive numeric capabilities, statistics, image processing, number theory and is a development environment using a web-based interface viaHTTP or HTTPS.
SINGULARUniversity of Kaiserslautern198419972011 (3.1.2)FreeGPLpolynomials, rings, ideals
SMath StudioAndrey Ivashov?20052012 (0.91)FreeCreative Commons Attribution-NoDerivs (CC-BY-ND)Mathematical notebook program similar to Mathcad
SpaceTime MathematicsSpaceTime Mathematics200620092010 (4.0)$39, free and discontinued for Windows Mobile Devices.ProprietaryComputer algebra and calculus,mobile device scientific computing
Symbolic MATLABToolboxMathWorks198920082011(5.7(2011b))$2900 including requiredMATLABProprietaryProvides tools for solving and manipulating symbolic math expressions and performing variable-precision arithmetic.
SymbolicC++W.-H. Steeb199719972009 (3.29)FreeGPLC++ -based
SymPyOndřej Čertík200620072012 (0.7.2)Freemodified BSD licensePython-based
SympyCorePearu Peterson200820082008 (0.1)Freemodified BSD licensePython-based
TI-Nspire CAS (Computer Software)Texas Instruments200620093.1.0.392ProprietarySuccessor to Derive. Based on Derive's engine used in TI-89/Voyager 200 and TI-Nspire handheld
TRIPJ. Laskar, M. Gastineau198920022011 (1.1.12)FreeAcademic licensecelestial mechanics
Wolfram AlphaWolfram Research20092012Pro version: $4.99 / month, Pro version for students: $2.99 / month, Regular version free.ProprietaryOnline computer algebra systemwith step-by step solutions.
WIRISMaths for More199720012.0ProprietaryOnline computer algebra systemand interactive geometry software
XcasBernard Parisse200420082011 (0.9.4)FreeGPLCompatible modes for maple, mupad and TI89 syntax. Symbolic spreadsheets, Giac library for use with other programs. ARM ports for some PDAs with Linux or WinCE[8]
YacasAyal Pinkus et al.1998[9] ?2012 (1.3.3)FreeGPL
CreatorDevelopment startedFirst public releaseLatest stable versionCost (USD)LicenseNotes

These computer algebra systems are sometimes combined with "front end" programs that provide a nice user interface, such as the general-purpose GNU TeXmacs.

[edit]Functionality

Below is a summary of significantly developed symbolic functionality in each of the systems.

SystemFormula editorArbitrary precisionCalculusSolversGraph theoryNumber theoryQuantifier eliminationBoolean algebraTensorsProbabilityControl Theory
IntegrationIntegral transformsEquationsInequalitiesDiophantine equationsDifferential equationsRecurrence relations
AxiomNoYesYesYesYes ? ? ? ? ? ? ? ? ? ? ?
AlgebratorYesNoNoNoYesYesNoNoNoNoNoNoNoNo ? ?
CadabraYesNoNoNoNoNoNoNoNoNoNoNoNoYes ? ?
FriCASNoYesYesYesYesNo ?Yes ? ? ? ? ? ? ? ?
JacalNoNoNoNoNoNoNoNoNoNoNoNoNoYes ? ?
JasymcaNoNoYesYesYesNoNoYesNoNoNoNoNoNo ? ?
jMathLabNoNoYesYesYesNoNoYesNoNoNoNoNoNo ? ?
MagmaNoYesNoNoYesNoYesNoNoYesYesNoNoNo ? ?
MapleYesYesYesYesYesYesNoYesYesYesYesNoNoYesYesYes
MathcadYesNoYesNoYesNoNoNoNoNoNoNoNoNoNoNo
Math EclipseNoYesNoNoNoNoNoNoNoNoNoNoNoNo ? ?
MathematicaYesYesYesYesYesYesYesYesYesYesYesYesYesNoYesYes
MathomaticNoNoYesYesYesNoNoNoNoNoYesNoNoNoNoNo
SymbolicMATLABtoolboxNoYesYesYesYesNoNoYes ?No ?NoNo ? ? ?
MaximaNoYesYesYesYesYesNoYesYesYesYesYesYesYes ? ?
Microsoft MathematicsYesNoYesNoYesYesNoNoNoNoNoNoYesNo ? ?
SageYesYesYesYesYesYesNoYesYesYesYesYesYesYesNoNo
SymPyNoYesYesYesYesYesNoYesYesNoYesNoYesYesYesNo
Wolfram AlphaPro version onlyYesYesYesYesYes ?YesYesYesYesYesYesNo ? ?
YacasNoYesYesNoNoNoNoNoNoNoNoNoNoNo ? ?
XcasYesYesYesNoYesYesNoYesYesNoYesNoNoNo ? ?

[edit]Operating system support

The software can run under their respective operating systems natively without emulation. Some systems must be compiled first using an appropriate compiler for the source language and target platform.

SystemWindowsMac OS XLinuxBSDSolarisOther
AlgebratorYesYesYesNoNo?
AxiomYesYesYesNoNo?
bergmanYes?YesYesYes?
CadabraNoYesYesYesYes?
ClassPad ManagerYesNoNoNoNo?
CoCoAYesYesYesYesYesTru64 UNIXHP-UXIRIX
DeriveYesNoNoNoNo?
DoCon??Yes???
DCASYes?????
EigenmathYesYesNoNoNo?
EulerYesNoNoNoNo?
FermatCygwinYesYesNoNo?
FORMCygwinYesYesYesYes?
Franklin MathYesYesYesYesYesAny system that supports Java
FriCASYesYesYesYesYes?
GAPYesYesYesYesYes?
JACALYesYesYesYesYes?
JasymcaYesYesYesYesYesAny system that supports Java
jMathLabYesYesYesYesYesAny system that supports Java
Java Algebra SystemYesYesYesYesYesAny system that supports Java
KANT/KASHYesYesYesNoNoNo
Macaulay2YesYesYesYesYes?
MagmaYesYesYesYesYes?
Magnus??Yes???
MapleYesYesYesNoYesNo
MathcadYesNoNoNoNoNo
MathEclipseYesYesYesYesYesAny system that supports Java
MathematicaYesYesYesNoNoNo
MathomaticYesYesYesYesYesAndroid, and all POSIX platforms
MathXpertYesNoNoNoNo?
MaximaYesYesYesYesYesAll POSIX platforms with Common Lisp
MeditorYesYesYesYesYes?
Microsoft MathematicsYesNoNoNoNo
MuMATHNoNoNoNoNo?
MuPADYesYesYesNoNo?
OpenAxiomYesYesYesYesYes?
PARI/GPYesYesYesYesYes?
ReduceYesYesYesYesYes?
SageNoYesYesNoYesVMware image for MS-Windows users
SINGULARYesYesYesYesYes?
SMath StudioYesNoYesNoNoMany handhelds supported
SymbolicC++YesYesYesYesYes?
Symbolic MATLABtoolboxYesYesYesYesYes?
SymPyYesYesYesYesYesAny system that supports Python
SympyCoreYesYesYesYesYesAndroid (no plots except textplots), Any system that supports Python
TI-Nspire (desktop software)YesYesNoNoNo?
WIRISYesYesYesYesYes?
XcasYesYesYesYesYes?
YacasYesYesYesYesYes?
TRIPYesYesYesYesYes?
WindowsMac OS XLinuxBSDSolarisOther

[edit]Hand-held calculator CAS

SystemCreatorDevelopment startedFirst public releaseLatest stable versionCost (USD)Open sourceLicenseNotes
Alg48 & ErableBernard Parisse199619983.2FreeSymbolic Math packages for HP48 series
Casio CFX-9970GCASIO Computer Co.?1998NoProprietary
Casio Algebra FX 2.0CASIO Computer Co.?1999NoProprietary
Casio ClassPad 330CASIO Computer Co.?20033.04.5000$140NoProprietaryThere is also an emulator: "ClassPad Manager" which runs on a PC.
EigenmathGeorge Weigt20082008137FreeYesfreeHandhelds available: Android, Nintendo DS, Poket PC.
HP 49 seriesHewlett-Packard?19992.15$110 and upYes[h 1]Proprietarywith someLGPLBased on Erable. Intended for problems which occur in engineering applications. Also used in HP-50calculators.
iCASAL Software201020101.2.1$15NoProprietaryNative iPhone and iPad implementation of REDUCE.
i41CX+AL Software200820084.9.2$25NoProprietaryiPhone and iPad application that combines the capabilities of the HP-41CX with a CAS based on REDUCE.
TI-89Texas Instruments?19962.09No longer in productionNoProprietary
TI-89 TitaniumTexas Instruments?20043.10$150NoProprietary
TI-92Texas Instruments?1995?No longer in productionNoProprietary
TI-92 PlusTexas Instruments199719982.09No longer in productionNoProprietary
TI-Nspire CASTexas Instruments200620082.0.1.60$160NoProprietaryTI-Nspire CAS handheld has a built-in Computer Algebra System for mathematical expressions in symbolic form. Features include: Symbolic calculations in addition to standard numeric calculations
Voyage 200Texas Instruments200120023.10$150NoProprietary
ZoomMath300IQ Joe? ?1.03$60NoProprietaryTI-83 and TI-84 application that adds CAS capabilities
  1. ^ There are several different definitions for open source. While the source code of the HP49 CAS is available to the public, the use of certain parts of it is restricted by a proprietary license. Therefore, the source code does not qualify under all definitions of open source as such.

 

반응형

'수학 (Mathematics) > 수치해석학' 카테고리의 다른 글

몬테카를로 적분(Monte Carlo Integral )  (0) 2012.11.03
수치 계산기 wxMaxima  (0) 2012.11.03
매쓰매티카 사용법  (0) 2012.11.03
반응형

http://andrejv.github.com/wxmaxima/

 

About

wxMaxima is a document based interface for the computer algebra system Maxima. wxMaxima uses wxWidgets and runs natively on Windows, X11 and Mac OS X. wxMaxima provides menus and dialogs for many common maxima commands, autocompletion, inline plots and simple animations. wxMaxima is distributed under the GPL license.

Download

The latest version of wxMaxima is 11.08.0.

All files released so far are available from sourceforge project page.

반응형
반응형

http://webcache.googleusercontent.com/search?q=cache:XXr4GNKGQakJ:matrix.skku.ac.kr/sglee/algebra/atlast/usage/+%EB%A7%A4%EC%93%B0%EB%A7%A4%ED%8B%B0%EC%B9%B4+%EB%8B%A4%EC%9A%B4&cd=6&hl=ko&ct=clnk&gl=kr

 

 

 

The Introduction of Mathmatica

Mathematica는 컴퓨터로 수학을 하기 위한 아주 유용한 툴입니다. 특히 Mathematica는 수학을 이용하여 이학과 공학들에 유용한 기능을 제공하기도 합니다. 특히 Mathematica는 수학을 이용하기 위한 툴이기 때문에 자체의 이용법을 익히기 위해서는 수학적인 이해도 필요합니다.

1. Mathematica의 용도

  • 수치와 기호계산 함수와 데이터의 시각화
  • 고급 프로그래밍 언어
  • 모델링 및 데이터 분석
  • 특정 어플리케이션을 위한 소프트웨어 플렛폼
  • 외부 프로그램에 대한 제어 언어
  • 수식과 그래픽등이 복합된 문서작성기

2. Mathematica의 사용법

3. 관련 Links

4. 주요 Reference : Wolfram Research Mathematica Manual 3rd Edition

반응형
반응형

적분상수를 고려하지 않아도 된다는 것을 알고 있긴 하지만 종종 유도 과정을 까먹어서 기억이 안날때가 있다...

다시 봐야지 뭐.. 어쩔 수 있나.. ㅋ

아래 잘 설명된 블르그가 있길래 포스트~!!

 

 

 

http://nosyu.pe.kr/1461


 

 

공학수학 시간에 생긴 물음입니다.

 

Linear ODEs를 구할 때 양변에 적분인자(integrating factor)를 곱합니다.

(Linear ODE)

 

위의 식에서 양변에 적분인자 F(x)를 곱합니다.

(적분인자를 곱한 후)

 

그럼 다음과 같은 형태로 바꿀 수 있습니다.

(식 정리)

이를 맞추기 위해 F(x)' = F(x)*p(x)이 되어야합니다.

따라서 이를 구하면 다음과 같습니다.

(적분인자)

 

 

이렇게 배운 후 예제를 풀 때 궁금한 것이 생겼습니다.

'적분인자를 구할 때 p를 부정적분하는데 적분상수를 넣지 않는것일까?'

그래서 이를 교수님에게 여쭈어보았지만,

'적분상수를 넣지 않습니다.'라는 답변을 받았습니다.OTL....

 

기숙사로 돌아와 왜 그런가 생각해보았습니다.

그래서 적분상수를 넣은 후 계산하였습니다.

(적분인자)

여기서 P(x)는 p(x)의 원함수입니다.

이렇게 적분인자를 구하고나서 Linear ODE의 양변에 곱해보았습니다.

(대입)

 

여기까지 한 후 생각해보았습니다.

'c는 상수계수이니 미분에 영향을 받지 않는다.

따라서 양변에 c를 제거하여도 좌변을 하나의 미분으로 만들 수 있다.'

 

즉, 이렇게 할 수 있습니다.

이렇게 하여도 전혀 무리가 없네요.^^

반응형
반응형

http://kowon.dongseo.ac.kr/~mrohm/

반응형
반응형

블로그 이미지

3DMP engines

3D그래픽스 물리 수학, 프로그래밍 GPU Shader 게임엔진 알고리즘 디자인패턴 matlab etc..

 

 

 

작성자 : 3DMP

 

 특수해를 알기전에 일반해에 대해서 먼저 알아야 한다

 

일반해 : 미정계수 C 를 포함하는 해, 즉 미분방정식의 해 가 된다

 

y'' + y = 0 의 일반해는

 

y = C_1 cosx + C_2 sin x 이다

 

확인 방법은 y 를 위 주어진 식에 대입해 보면 된다

 

y' = - C_1 sinx + C_2 cosx

y'' = - C_1 cosx -  C_2 sinx

 

therefore

- C_1 cosx - C_2 sinx + C_1 cosx + C_2 sin x = 0

 

이때 특수해(y_p) 를 구해보면 어떤 주어진 특정 상황이 필요하다

위 식에서 y(0) = -1 , y''(0)= -1 라는 조건이 주어진다면

미정계수 C_1, C_2 를 다음과 같이 결정할 수 있다

 

미정계수 결정 :

C_1 = 1

C_2 = -1

 

그리하여 특수해 y_p 는 다음과 같이 얻을 수 있다

y_p = cosx - sinx

 

여기서 알 수 있는 것은 특수해는 어떤 제한적인, 즉 미리 결정되어 있는 해중의 하나 라는 것이다

 

다시말해 특수해는 일반해범위에 포함 된다는 것 !! (일반해의 계수는 정해져 있지 않음으로...)

 

특수해 : 임의의 매개변수라는 제약이 없는, 매개변수가 결정된 미분 방정식의 해를 특수해라 한다

 

ex) 비동차 미분방정식의 일반해는?

P(D)y = g(x)    , Dy = 0  because D = d/dx

 

P(D)y = g(x)의 일반해는,  P(D)y = 0 을 동차로 볼때의 일반해 y_c 와 P(D)y = g(x) 의 비동차 미분방정식의 특수해(계수가 정해져있는) y_p 를 더한 것

 

그런데 다음과 같이 보다 넓은 특수해를 식 조작으로 구할 수 있다는 것을 알 수 있다

 

A특수해 = 비동차미분방정식의 일반해 Y - 동차미방 y_c

 

A특수해는 비동차미분방정식의 일반해 Y 에서 - 동차미방 y_c 를 한 것임으로 일반해의 범위가 넓다는 성질이 반영되어 A특수해는 제한적이 아닌

 

보다 넓은 특수해가 된다(=A특수해)

 

 

 

실제 특수해가 y_p = e^{-x} 였다면  A특수해로 봤을때 y_p = C_1 e^{-x} + C_2 e^{-3x}  꼴인 보다 넓은 특수해의 형태로 나타낼 수 있다

 

즉 계수를 정해 실제 특수해를 구하는 것이다

 

C_2 를 0 으로 잡으면 원래의 y_p 를 구할 수 있다

 

미정계수를 결정하는 방법은 C_1 e^{-x} + C_2 e^{-3x} 을 원래의 식에 다시 대입하여 계수를 결정하면 된다

 

g(x) 에 대한 해 임으로 원래의 좌항식에 C_1 e^{-x} + C_2 e^{-3x} 을 대입하면 우항인 g(x) 와 유사한 식이 좌항에 나타나게 된다

 

 

tip : 해가 늘어날 때마다 + 로 연결하면 된다, 즉 해가 늘어나는 것은 + 로 연결하여 늘려주면 된다는 것인데

동차의 일반해 두개가 + 로 묶인것 처럼 y_p 도 + 로 묶어주면 전체 DE의 일반해가 된다

- 이것은 정확은 증명은 아니지만 유사한 것이라고도 볼 수 있다

 

 

반응형
반응형

공업수학(공학수학) 급수해1~6  무료강의 / 대학수학 

2010/03/17 20:00

복사http://blog.naver.com/ellu_na/120103852221

전용뷰어

공업수학(공학수학) 무료강의 급수해1~6

 

대학수학인강(미분적분학,공업수학 등) 큐스터디 권태원 선생님 강의입니다

 

공학수학(공업수학) 무료강의 급수해1

 

공학수학(공업수학) 무료강의 급수해2

 




 

공업수학 급수해 3

 

공업수학 급수해 4






공업수학 급수해 5

 

 

공업수학 급수해 6





www.qstudy.kr

큐스터디는 미분적분학, 선형대수학, 공업수학(공학수학), 미분방정식 등 대학수학 인터넷강의 사이트입니다.

 

 


반응형
반응형

블로그 이미지

3DMP engines

3D그래픽스 물리 수학, 프로그래밍 GPU Shader 게임엔진 알고리즘 디자인패턴 matlab etc..



적분 앞에 적분할 변수와 다른 변수에 대한 미분이 있으면 미분이 안으로 들어가(편미분 하는 것 처럼) 먼저 미분 할 수 있다





아래부터는 첨부내용




http://blog.naver.com/sosintegral/50025651061






반응형
반응형


a>=0 에서 다음과 같이 정의된 함수를 단위계단 함수라 한다

u(t-a) => 0   ( 0 <= t < a  )
u(t-a) => 1   (             a <= t   )




ex)    
g(x) -  g(x)u(t-a)  + h(t)u(t-a)



Tip : u 함수는 0,1 로 구성됨으로 u(t) 값이 0 인지 1 인지 판단해보고 이를 u(t-a) 에 적용
      현재 u(t-a) 를 0 인 상황을 생각 해볼 것이라면 u 함수대긴 0 을 대입, 그반대면 1 대입



a 값에 따라 g(x) 또는 H(t) 함수가 나온다

여러 함수들에 단위계단 함수를 각각 (t-n) 을 붙여 마치  int 변수에  1 bit 씩 더해나가는

논리 연산처럼 함수들을 뽑아낼 수도 있다








http://blog.naver.com/kimth1023/120052640405

 


반응형
반응형


첨부파일 :

라플라스.alz

라플라스.a01

라플라스.a02

라플라스.a03

라플라스.a00




이하 퍼온글



라플라스 변환(Laplace transform)은 어떠한 함수 f(t)에서 다른 함수로의 변환으로, 선형 동역학계와 같은 미분 방정식을 풀 때 유용하게 사용된다. 피에르시몽 라플라스의 이름을 따 붙여졌다.

라플라스 변환을 이용하면, 어려운 식들을 쉽게 변환하여 풀 수 있으며, 문제들을 직접적으로 해결 할 수 있는 장점이 있다. 초기값 문제의 경우 일차적으로 일반해를 구하는 단계가 필요없게 되고, 비제차 미분방정식의 경우에는 대응하는 제차미분방정식을 먼저 풀 필요가 없다. 라플라스 변환은 주어진 식은 간단한 식으로 변환한 뒤, 변형된 식을 푼다. 그리고 그렇게 풀어진 해를 다시 원식으로 변환한다.

 

라플라스 변환 : t 관련 값이 들어가 s 관련 값이 나온다


정의

함수 f(t)의 라플라스 변환은 모든 실수 t ≥ 0 에 대해, 다음과 같은 함수 F(s)로 정의된다.

F(s)&#-3;&#-0;  = \mathcal{L}\left\{ f\right\}(s)&#-3;&#-0;  =\int_{0^-}^\infty e^{-st} f(t)\,dt.

여기서  는 \lim_{\epsilon \rightarrow +0} -\epsilon를 간단히 나타낸 것이고 복소수 s = \sigma + i \omega \, , σ와 ω는 실수이다.

실제 사용시에는 엄밀히 정확하지는 않지만 F(s) = \mathcal{L} \left\{f(t)\right\}로 표기하기도 한다.




위 정의대로 풀때 무한대 기호가 있기 때문에 이상적분으로 풀이를 하지만 간편하게 그렇다고 인지하고 있고 그냥

풀어 나간다, 너무 자세한건 오히려 보기 지저분할 수 있다





성질


선형성

\mathcal{L}\left\{a f(t) + b g(t) \right\}&#-3;&#-0;  = a \mathcal{L}\left\{ f(t) \right\} +&#-3;&#-0;    b \mathcal{L}\left\{ g(t) \right\}

상수는 Laplace 밖으로 빠질 수 있다

 

F(s)&#-3;&#-0;  = \mathcal{L}\left\{ f\right\}(s)&#-3;&#-0;  =\int_{0^-}^\infty e^{-st} f(t)\,dt.


미분

\mathcal{L}\{f'\}&#-3;&#-0;  = s \mathcal{L}(f) - f(0)  =  sF(s) - f(0)

\mathcal{L}\{f''\}&#-3;&#-0;  = s^2 \mathcal{L}(f) - s f(0) - f'(0) =  s^2F(s) - sf(0) - f'(0)

\mathcal{L}\left\{ f^{(n)} \right\}&#-3;&#-0;  = s^n \mathcal{L}\{f\} - s^{n - 1} f(0) - \cdots - f^{(n - 1)}(0)

\mathcal{L}\{ t f(t)\}&#-3;&#-0;  = -F'(s) = - d/ds F(s)

 

t^2 라면

 

- ( - ) d/ds d/ds F(s) = + d^2/ds^2 F(s)


\mathcal{L}\{ t^{n} f(t) \}&#-3;&#-0;  =(-1)^{n} F^{(n)} (s)   = (-1)^n d^n/ds^n F(s)
 
 
'L{ } ' is laplace

 
\mathcal{L}\left\{ \frac{f(t)}{t} \right\} = \int_s^\infty F(\sigma)\, d\sigma ,      L{ f(t) } = F(σ)
 

적분
'*' is convolution , "합성곱"
tip : T is not t
L { 1 * f(t) } =  \mathcal{L}\left\{ \int_0^t f(\tau)\, d\tau \right\}  = \mathcal{L}\left\{ u(t) * f(t)\right\} = {1 \over s} F(s)

 

합성곱 ( '*' is convolution , "합성곱" )

(f * g)(t) = ∫ f(u)g(t-u) du   , 적분범위는 0(아래 끝) ~ t(위 끝) 까지

 

\mathcal{L}\{f * g\}&#-3;&#-0;  = \mathcal{L}\{ f \} \mathcal{L}\{ g \}   
 

t
 shifting
u( t - a) = 단위계단 함수(= 층계 함수)
t  <= a   라면 u(t-a) = 0
t > a  이면 u(t-a) = 1
 
\mathcal{L}\left\{ f(t - a) u(t - a) \right\}&#-3;&#-0;  = e^{-as} F(s) 
 
\mathcal{L}^{-1} \left\{ e^{-as} F(s) \right\}&#-3;&#-0;  = f(t - a) u(t - a)

참고: u(t)는 층계 함수이다.


합성곱

\mathcal{L}\{f * g\}&#-3;&#-0;  = \mathcal{L}\{ f \} \mathcal{L}\{ g \}


주기가 p인 주기함수의 라플라스 변환

\mathcal{L}\{ f \}&#-3;&#-0;  = {1 \over 1 - e^{-ps}} \int_0^p e^{-st} f(t)\,dt







라플라스 역변환( s 관련 값이 들어가 t 관련 값이 나온다 )

An integral formula for the inverse Laplace transform, called the Bromwich integral, the Fourier–Mellin integral, and Mellin's inverse formula, is given by the line integral:

\mathcal{L}^{-1} \{F(s)\} = f(t) = \frac{1}{2\pi i}\lim_{T\to\infty}\int_{\gamma-iT}^{\gamma+iT}e^{st}F(s)\,ds,








http://pinkwink.kr/173



라플라스 변환

위에 라플라스변환의 정의가 나타나 있습니다. 

 
라플라스변환의 정의를 이용해서 "1"을 라플라스변환한 결과입니다. 그러나, 위 정의식을 계속 사용한다는 것은 뭐 힘든일이겠지요^?^. 그래서

 
저와 같이 변환표를 이용합니다. 




라플라스 역변환

위는 라플라스 역변환표입니다. 뭐 당연히 라플라스 변환표의 반대겠지요^^. 라플라스 역변환의 정의는 아주 복잡해서 손으로 푸는 것은 어렵습니다. 그래서 위 역변환표에 가장 가까운 형태로 식의 형태로 바꾸어가는 겁니다.

 
위의 예제를 보면 무슨 말인지 알 수 있을겁니다.

 
위 예제는 항별나누기를 이용해서 식을 분리하고, 라플라스 변환이 가지는 선형성을 이용해서 각각을 역변환하는 것입니다. 


위 예제는 흔히 말하는 유수정리(Residue Theorem)의 부분분수 전개를 이용한 것입니다. 보통은 위 전개방식은 분모를 영으로 만드는 것을 대입한다고 외웁니다.^^. 


이 라플라스 변환과 역변환은 미방의 풀이에 큰 장점을 가지게 되는데요 일단 도함수를 변환하면 위 정리와 같습니다.

 
미방을 라플라스 변환하고 대수방정식화된 식의 해를 찾고 다시 역변환하는 과정을 거치게 됩니다.

 
위 간단한 예를 보면

 
위와 같이 초기값을 고려하여 라플라스변환하고 라플라스변환된 식을 푼다음 다시 역변환으로 그 해를 찾는 것입니다.





Translation Theorem

시간영역에서 지수함수는 라플라스 변환을 하고 나면 단순 평행이동이 되어있습니다.

 
이를 이용하면 위 예제들 역시 간단히 그 해를 찾을 수 있습니다. 
 




Derivatives of Transforms

시간영역에서 시간의 급수형태의 함수를 라플라스변환하면 라플라스 도메인 영역에 대한 미분형태로 나타나게 됩니다.


반응형
반응형



블로그 이미지

3DMP engines

3D그래픽스 물리 수학, 프로그래밍 GPU Shader 게임엔진 알고리즘 디자인패턴 matlab etc..



비선형 미분방정식 [기초]                                                       written by 3DMP



비선형 미분방정식

 1. 종속변수가 없는 경우
 2. 독립변수가 없는 경우

n계수 =  y를 기준으로 미분한 y' or y^(n) 의 가장높은 n에 대한 n 계 를 말하며

y^(4)=0 =>4계 미분방정식

이에대한 내용과 미분방정식에 대한 내용 [참고 : 미분방정식이란? ]

ex)

  =>  2계 미분방정식 but 2계 선형 미분방정식은 아니다

선형미분방정식이 아닌 것을 풀려면 우선 치환을 한 후 적분하여 차수가 낮아지는

성질을 이용하여 y 를 구해야 한다


그런데..

변수분리법이 1계 미분방정식이 범위내에서 정의 되어 있다는 정의가 있음으로

이를 이용하여 풀어나갈 수 있다




아래처럼 u 로 치환을 적용한 후 



이것으로 x,u 를 각각 우,좌 변으로 나누어 변수분리법을 활용한다



이때 

적분상수 C 를 x^2 과 같이 제곱의 수로 본다면 어떤수의^2 = C 라면 다음과 같은
공식을 적용 할 수 있다


3번 공식을 활용 하면..






으로 y 를 구할 수 있다




독립변수 x 가 없는 경우

아래의 경우는 2계 미분방정식 이며 선형 미방이 아님으로 동일하게
치환을 활용한 변수분리형 미방을 활용하여 구한다



dy'/dy 를 연산할때 y 는 x 의 함수 임으로 x 로 미분 하고
분모의 dx 와 분자의 dx 가 약분되어 사라지는 것이 연산의 성질 이지만
여기서 dx/dy 값을 찾아보자면 그것이 위처럼 dx/dy=1/u 라는 것을 알 수 있다


치환을 통하여 y,u 로 식을 구성한 후
변수분리법으로 y 값을 구한다



상수적인 부분을 간단하계 치환하여 표현한다




이 풀이 과정에서는 y 를 구할때 

u 에 대한 적분과 y 에 대한 적분을 한번씩 수행

반응형
반응형

블로그 이미지

3DMP engines

3D그래픽스 물리 수학, 프로그래밍 GPU Shader 게임엔진 알고리즘 디자인패턴 matlab etc..






[주의!! 이 블로그는 퍼가실 수 없습니다]

 

출처 : 큐스터디


 

 


[주의!! 이 블로그는 퍼가실 수 없습니다]




반응형
반응형

블로그 이미지

3DMP engines

3D그래픽스 물리 수학, 프로그래밍 GPU Shader 게임엔진 알고리즘 디자인패턴 matlab etc..



치환을 사용하는 이유는 우변이 만약 lnx 등으로 나간다면 나중에 이 우변의 항을 적분해야 되는 순간이 오게 되는데 그때의 연산량이 엄청 길다


그래서 치환을 활용하여 길게 나갈껏 같은 연산을 간략하게(원래에 상대적으로 비교하여) 함으로써 풀이를 좀 더 용이하게 할 수 있다


 

다음과 같은 비동차(비제차) 미분방정식이 있다고 하자

그런데 x 의 차수와 y 의 미분 횟수가 각 항마다 동일하고 계수가 상수가 아니기 때문에 (좌변이..) 

코시 오일러 미분방정식을 사용할 수 있고

우변이 lnx 로 가기 때문에 나중의 적분을 고려하여 비교적 간략하게 치환을 활용한 

미분방정식 풀이를 이용 할 수 있겠다


정리하자면 코시의 오일러 미방으로 동차 fy)=0 를 만족하는 해 Y_c 를 구한 후 특수해 y_p 를 구해

이 둘을 더해주는 방식으로 풀면 된다, 이때 특수해는 매개변수 변환법을 사용해 구한다

f(y)=g(x)  ( f(y) 가(=) 0 이 아닐때)

그런데 ...

g(x) 가 다항함수, 지수함수, cos,sin 일때는 미분방정식의 특성방정식 을 통하여 

g_zero(x)g(x)=g_zero(x)0 = 0  이 되는 해 t 의 값을 구해 t 를 지수로 같는 e^f(x) 꼴의 함수들을 구해

일반해를 만들 수 있다 또한 어떠한 해와 관련된 힌트가 있다면 해당 개수를 구하는 미정개수법으로 

상수를 구할 수다 

하지만, 현재는 우변이 ln 과 같은 log 가 있기 때문에 특성방정식으로 구할 순 없으며 대신 

매개변수 변환법으로 특수해(y_p) 를 구해야 한다

최종해는 y = y_c + y_p 가 된다



참고 : 코시의 오일러 미분방정식의 일반해의 꼴이 x^m  의 꼴로 나타난다   x^m 이 여러개로 연결되는 형태..

또한 동차 미분방정식  f(y) = 0 의 일반해의 꼴은 x^(D)e^f(x)  의 꼴 이거나 저것과 결합된 cos+sin 형태로

        [D 는 정수집합,  x^(D)e^f(x) 꼴이라는 것은 이것들이 여러개로 결합될 수 있다는 것 + 기호로..]

나타난다 자세한건 동차미분방정식의 증명과정을 참고하면 된다



p.s 위 식의 풀이를 적으려다가.. 풀이가 제법 길기도 하거니와 여기까지 쓰면서 귀차니즘 등으로
      이 이상의 기술을 멈췄는데 만약  댓글로 요청이 있으면 풀이를 수식기를 활용하여 올리겠습니다


아래부터는 첨부내용


코시-오일러 방정식


위키백과, 우리 모두의 백과사전.

코시-오일러 방정식(혹은 오일러-코시 방정식: Euler-Cauchy equation)은

x2y'' + axy' + by = 0

와 같은 선형 상미분방정식인데, 주어진 상수 a와 b 그리고 y(x)를 가진다.

y = xm

이라고 하고, 첫 번째 식에 대입하면,

x2m(m − 1)xm − 2 + axmxm − 1 + bxm = 0

이 되고, x\ne0일 때 공통인자 xm을 제거하면,

m2 + (a − 1)m + b = 0

이 된다.

여기서 m에 따라 미분방정식의 해를 구할 수 있다.

case
서로 다른 두 실근y=c_{1}x^{m_{1}}+c_{2}x^{m_{2}}
중근y=\left( c_{1}+c_{2}\ln x \right)x^{m}
공액 복소근y=x^{u}\left[A\cos\left(v\ln x\right)+B\sin\left(v\ln x\right)\right], m_{1}=u+iv, m_{2}=u-iv


반응형
반응형

블로그 이미지

3DMP engines

3D그래픽스 물리 수학, 프로그래밍 GPU Shader 게임엔진 알고리즘 디자인패턴 matlab etc..




선형미분방정식 y'' + ay' + by =0 에서 계수 a,b 가 모두 상수일 때 상계수 동차미분방정식이라 한다

f(D)y = 0 이라 둘 수 있고 f(D) = D^2 + aD + b 에서

 D^2 는 y'' 대신에 들어간 것   (d^2 /dx^2 )y  인데  d^2 /dx^2  = D^2 가 되는 것

다시 D 를 t 로 바꾸면....

f(t) = t^2 + at + b =0 을 주어진 미분 방정식의 특성 방정식이라고 한다


이것에 대한 증명과정이 있지만 우선 찾기 귀찮음으로 여기까지만 적어놓음..


미방에서 특성 방정식은 동차미분방정식을 풀때의 근을 좀 더 쉽게 구하기 위한 알고리즘 이다..




반응형
반응형



블로그 이미지

3DMP engines

3D그래픽스 물리 수학, 프로그래밍 GPU Shader 게임엔진 알고리즘 디자인패턴 matlab etc..

반응형
반응형


블로그 이미지

3DMP engines

3D그래픽스 물리 수학, 프로그래밍 GPU Shader 게임엔진 알고리즘 디자인패턴 matlab etc..




작성자 : 송정헌


강의를 보고 분명 나중에 까먹을것 같아 정리한 것인데 

수식기로 써내려가다보니 오타가 있을 수 있음음로 만약  오타 발견 후 댓글 달아주시면 수정하겠습니다





아래 식중 미분방정식을 f(x) 라고 쓴건 모두 f(y) 임..


변수 변환법


 

 

 


f(x) 에 y_c 를 대입해 0 이 나왔다는 것은 동차DE(동차미분방정식)의 해와 같다고 할 수 있음으로 이것을 f(x) 가 0 이 되는 해를 동차 미분 방정식의 일반해로 놓을 수 있다


차수에 따라 독립해들의 개수가 증가한다  

1차=y_1(해의 개수 1개) , 2차 =y_1, y_2 , ... , 

n차 = y_1 , y_2 , ....  y_n




 

 

 

즉 이 y_p 가 유도되어 졌다는 것은 y_p = u_1*y_1 로 부터 구해질 수 있다는 것임으로 u_1 의 식을 구할 수 있다면 

해를 구할 수 있다는 것!!


차수에 따른 u_n -> n개의 함수를 구해야 한다




 

 

y_1u_1' + y_2u_2' =0 으로 두는 이유는..   f(x) 에 

y_p', y_p''(y_1u_1' + y_2u_2' =0  을 적용하지 않고 그냥 두번 미분한 식) 을 대입하여 정리하면


d[y_1u_1' + y_2u_2']/dx + p(x)[y_1u_1' + y_2u_2'] + y_1'u_1' + y_2'u_2' 

로 f(x) 가 풀이 되는데 특수해 y_p 를 대입한 f(x) 가 나온다는 것은 특수해는

수 많은 해 중에 하나를 구해내면 나머지 계수, 함수등을 연립하는 등으로 

풀어낼 수 있기 때문에 먼저 식을 간단 하게 하기 위하여 

다시말해 해를 하나 뽑아낸다는 가정으로 

d[y_1u_1' + y_2u_2']/dx + p(x)[y_1u_1' + y_2u_2'] 을 

y_1u_1' + y_2u_2' = 0 으로 가정한다 

그래서 특수해 y_p 에 해당하는 하나의 해는 

f(x) = y_1'u_1' + y_2'u_2'  로써 추론해 갈 수 있다




2차 = y_1'u_1' + y_2'u_2'  

3차 = y_1''u_1' + y_2''u_2' + y_3'''u_3'


n 차

y_1^(n-1번미분)u_1' + y_2^(n-1번미분)u_2' + ...... +    y_n^(n-1번미분) u_n'





 

[오타 수정 : y_1' + py' + Qy_1 => y_1' + py_1' + Qy_1]

 

[오타 수정 : y_1' + py' + Qy_1 => y_1' + py_1' + Qy_1]



 

 

 


끝~!!






참고 자료


보다보면 다음의 것들이 궁금할 수 있기에 주소를 포스팅해놓는다



크래머 공식(연립방정식 해를 구하는 행렬식)

http://web3.c2.cyworld.com/myhompy/board/retrieveBoard.php?home_id=a0619041&lmenuSeq=204317&smenuSeq=257257&postSeq=6651428&referrer=http%3A%2F%2Fweb3.c2.cyworld.com%2Fmyhompy%2Fmain.php%3Fhome_id%3Da0619041%26referrer%3Dhttp%253A%252F%252Fcyhome.cyworld.com%252F%253Fhome_id%253Da0619041



론스키 행렬식(= 결과 값이 0 이 아니면 1차 독립이다 )

http://web3.c2.cyworld.com/myhompy/board/retrieveBoard.php?home_id=a0619041&lmenuSeq=204317&smenuSeq=564534&pageNo=1&postSeq=6555657&view=bbs&menu=smenu


반응형
반응형

http://kowon.dongseo.ac.kr/~mrohm/differential_equation/week03.htm#top








       1.2.3 동차비분방정식   1.2.4 완전미분방정식








 

 

1.2.3 동차비분방정식

 

      동차미분방정식을 정의하기에 앞서 우선 동차함수에 대하여 살펴보자.

 

정의 2.3.1   임의의  에 대하여  가 성립할 때  를  차동차함수(homogeneous function)라 한다.

       

동차함수란 각 항의 차수의 합이 같음을 의미한다.

 

예제 2.3.1   다음의 주어진 함수가 동차함수인지 아닌지를 판별하라.

(1)    

(2)    

(3)    

풀이

(1)    

                   

                   

                   

   는 3차 동차함수이다.

(2)   

                  

                  

그러므로  는 의 차수가 1 이므로 동차함수가 될 수 없다.

(3)    

                   

                   

                   

    는 1차 동차함수이다.

 

      미분방정식

(2.4)                                

에서  와 가 같은 차수의 동차함수일 때 (2.4)를 동차미분방정식 (homogeneous differential equation)

이라 한다.

    동차미분방정식은 치환에 의하여 항상 변수분리형 미분방정식으로 변형된다.

    치환  혹은  를 이용하여 미분방정식 (2.4)는 변수분리형 미분방정식으로 변형될 수 있다.

여기서 와  는 각각 에 의존하는 새로운 종속변수이다.

    만일 치환 를 적용하여 양변을  에 대하여 미분하면

                                 

미분방정식 (2.4)는

                                 

으로 된다. 이  차 동차함수이면

                                 

이므로 다음과 같이 변수분리형 미분방정식으로 변형된다.

                                   

      치환  를 실시하면

                                    

을 얻게된다.

     여기서 소개된 두 가지 치환중에서 어떤 것을 선택해야 하는가 하는 기준은  다음과 같이 설정해 볼 수 있다.

 에 비하여  식이 더 복잡하면  치환을 사용하는 것이 일반적으로 보다 간단한 식을 얻을 수 있다.

역으로  에 비하여  식이 더 복잡하면  치환을 적용하는 것이 바람직하다.

    그러나 한가지 치환을 실시했을때 적분불가능한 식을 얻게 되면 다른 치환으로 시도해 볼 수 있다.

 

예제 2.3.2     을 풀어라.

풀이   이 2차동차함수이므로 치환  를 실시하면

                                        

변수분리형 미분방정식으로 변형하면

                                        

을 얻는다. 위의 식을  에 대하여 각각 적분하면

                                        

를 얻게 된다.

 

예제 2.3.3    을 풀어라.

풀이    가 3차동차함수이며  이   보다 간단하므로 치환   를 적용하면                                                   

                                         

을 얻게 된다. 위 식을 변수분리하여 적분하면

                                            

를 얻는다.

 

                                                      연습문제 1.2.3

1. 다음 함수들이 동차함수인지 아닌지를 판단하라. 동차함수이면 차수를 결정하라.

(1)                                                              (답: 동차함수, 차수=4)  

(2)                                                                     (답: 비동차함수)

(3)                                                                   (답: 동차함수, 차수=0)

(4)                                                                            (답: 비동차함수)

(5)                                                            (답: 동차함수, 차수=0)

(6)                                                              (답: 동차함수, 차수=-2)

2. 다음 동차방정식을 적당한 치환에 의하여 해를 구하라.

(1)                                                              (답:  )

(2)                                       (답:  )

(3)                                                         (답:  )

(4)                                                       (답:  )

3. 다음 초기치 문제의 해를 구하라.

(1)                      (답:  )

(2)                          (답:  )

(3)                         (답:  )

4. 동차방정식 는 치환 에 의하여 변수분리형미분방정식으로

변환시켜보라.

5. 동차방정식  는  로  변형될 수 있음을 보여라.

 

 







1.2.4 완전미분방정식

      공간의 영역  에서 정의된  의 편도함수  가 연속일 때,   의 전미분은

(2.5)                                                       

로 정의되어진다.

     만약  가 어떤 영역  에서 이면 식 (2.5)로 부터

                                                               

가 된다.

    이로부터 주어진 방정식

(2.6)                                                

가    을 만족하는  가 존재한다면 방정식 (2.6)의 해는 가 될것이다.                                                              

정의 2.4.1   어떤 함수  에 대하여

                                                  

가 성립되면 미분방정식  를 완전미분방정식(exact differential equation)이라 한다.

 

  그러면 우리는 아래의 두 가지 문제를 생각해 볼 수 있다.

(1)  가 완전미분방정식인가?

     (즉  를 만족하는  가 존재하는가?)

(2) 만약 주어진 방정식이 완전미분방정식이라면  를 어떻게 구할 것인가?

            

   다음 정리에서 물음 (1)에 대한 해답을 찾아보기로 하자.

 

정리 2.4.1    가 영역 에서 연속인 1계 편도함수를

가진다고 가정했을 때,   이 완전미분방정식이 될 필요충분조건은

                                                         

증명     

(i)  가 완전미분방정식이면

                                             

를 만족하는 가 존재한다.

그러므로 영역  에서   가 성립된다.

                                            

여기서  인 것은 함수  이 연속인 1계 편도함수를 가지므로 가능하다.

(ii)   가 완전미분방정식이 되기 위해서는  

                                             

를 만족하는  가 존재하여야 한다. 즉,

                                                 

를 만족하여야 하므로 우선,  의 양변을  에 대하여 적분하면   

                                               

를 얻게 된다. 즉

(2.7)                                        

를 얻게 된다. 여기서  는  에 대하여 적분하였을 때 적분상수이다.

위 식을  에 대하여 편미분을 취하면

                                              

(2.8)                                     

우변의 식   는

                         

                                                                 

이므로   와 무관한   만의 함수이다.

그러므로  를   에 관하여 적분하여  를 구할 수 있다.

 

    위의 증명 (ii)는   가 완전미분방정식일때 방정식의 해  를

풀이하는 과정을 함께 보여주고 있다.  위의 증명에서는  에서 시작하였지만   

를 이용하여  를 구하여도 같은 결과를 얻을 수 있을 것이다. 이 과정에서 식 (2.7), (2.8)은

(2.9)                                             

(2.10)                                             

로 각각 대치될 수 있을 것이다.

 

예제 2.4.1   가 완전미분방정식임을 보이고

그 해를 구하라.

풀이

                                                 

이므로 정리 2.4.1에 의하여 주어진 미분방정식은 완전미분방정식이다.

 보다  가 더 간단하므로

                                                          

라 두자.  정리 2.4.1 (ii)의 과정을 따르면

                                                          

를 얻는다.

                                       

를 얻는다. 따라서 해집합은

                                                              

 

예제 2.4.2   다음 초기치 문제를 풀어라.

                                                

풀이

                                                  

이므로 주어진 미분방정식은 완전미분방정식이다.

                                                  

이므로 적당한   에 대하여

                                                 

를 만족한다.

                                       

이 성립해야 하므로

                                                         

                                             

따라서 미분방정식의 해집합은

                                                   

 을 위 식에 대입하면

                                                      

따라서 주어진 초기치 문제의 해는

                                                     

 

                                                                연습문제 1.2.4

1. 다음 미분방정식이 완전미분방정식인지를 판단하고 완전미분방정식일 경우 그 해를 구하라.

(1)                                             

 (답:  )

(2)                                                         

 (답:  )

(3)                                                   

 (답:  )

(4)                              

 (답:  )

(5)                                                 

 (답:  )

2. 다음 초기치문제의 해를 구하라.

(1)                           

 (답:  )

(2)             

 (답:  )

(3)  

 (답:  )

(4)  

 (답:  )

3. 다음 미분방정식이 완전미분방정식이 될 수 있도록 미지수  를 정하라.

(1)                       (답:  )

(2)                     (답:  )

(3)        (답:  )

4. 다음 미분방정식이 완전미분방정식이 될 수 있도록  를  결정하라.

                                             
 (답:     단,  는 임의의  에 대한 함수)

5. 다음 미분방정식이 완전미분방정식이 될 수 있도록  를  결정하라.

                                            

 (답:  단,   는 임의의   에 대한 함수)

 


반응형
반응형


선형보간법

라그랑제 다항식 보간법

네빌레의 반복 보간법

뉴튼 다항식에 의한 보간법

 

은 첨부파일

 

 

 

 

 

 

 


Gauss 구적법  낙서장 

2009/08/13 12:45

복사http://blog.naver.com/jjonggu12/60088350035

Gauss quadrature를 배우시다면

그 전에 Newton-Cotes formula 같은 방법은 아실거로 생각되네요.

 

수치 적분의 기본 가정은 어떤 구간에서

n개의 point와 그에 대응되는 n개의 함수값을 알고 있을 때,

그 n개의 점을 지나는 (n-1)차의 근사다항식으로

식을 가정하여서, 다항식을 적분하는 것입니다.

 

통상 구간을 [-1, 1]로 두고 시작하는데, 구간이 바뀔 경우에는

적절히 치환 등을 통해 구간을 바꿔서 쓰면 됩니다.

 

간단한 예로 [-1, 1]사이에서 3개의 점으로 적분값을 구하고자 할 경우

3개의 점을 -1, 0, 1으로 등간격으로 잡게 되고,

그에 대응되는 함수값 f(-1), f(0), f(1)을 사용하여

이 점을 2차는 2차 다항식을 구합니다.

이는 간단히 Lagrangian interpolation 등을 통해

따라서 적분 값은

이 됩니다. (이 방법이 Simpson's rule 입니다.)

 

이런 결과 들을 종합하여 n차 다항식을 가정하여 구한 적분은

위와 같이 나타낼 수 있습니다.

각 point에 대응되는 함수값과, 그 값에 어떤 weight를 곱한 결과들을

다 더하게 되는 겁니다.

가령 Simpson's rule이라면 point -1, 0, 1에 대해서

그 함수값에 각각 1/3, 4/3, 1/3 이 weight가 되는거구요.

 

 

쓸데없이 이런 얘기를 길게 쓴 이유는

다항식으로 가정하는 Newton-Cotes formula는

그 point가 정해져 있다는 것을 말씀드리기 위해서입니다.

통상 등간격으로 정해진 point와 함수값에 대해서

이런 식으로 접근을 한다는 것입니다.

그렇게 point 갯수(n)에 대응되는 (n-1)차 다항식으로 근사시켜서 값을 구합니다.

 

반면 Gauss-quadrature는 기본적으로

Newton-Cotes formula를 따르는데,

대신 point를 정해진 값이 아니라

변수로 두고서, 적절한 값을 선택하겠다는 것입니다.

Newton-Cotes formula에서는 point수가 정해지면

나머지는 그 수에 대응되는 weight를 구하기만 하면 됩니다.

반면에 Gauss quadrature는 point까지 미지수로 두면서

n개의 point와 n개의 weight를 가지고서 다항식을 근사적으로 구합니다.

결국 2n 개의 미지수를 가지는 셈이니,

(2n-1)차의 다항식으로 근사시킬 수 있습니다.

단지 n개의 point만을 사용해서요.....

 

 

 

위 식을 그 과정 중에 하나의 예로서

2-point Gauss quadrature를 설명하고 있습니다.

2개의 point와 2개의 weight를 미지수로 두고 있으므로

3차의 다항식으로 가정할 수 있게 됩니다.

따라서 그렇게 가정해서 구한 적분은

3차 이하의 다항식에 대해서는 정확하게 적분값이 맞아야 합니다.

따라서 임의의 3차 다항식에 대해서

그 결과가 정확해야 하므로

 

 

가 됩니다.

따라서 A, B, D, E 각 항의 계수를끼리 묶으면

가 되는겁니다.

 

쓸데없이 식을 늘여쓰긴 했지만

결국 2개의 point와 2개의 weight로 3차 다항식을 구현하였으므로,

2 point Gauss quadrature는

0차, 1차, 2차, 3차 다항식에 대해서

해가 정확하게 일치해야 된다는 조건을 각각 나열한 것입니다.

 

그리고 중간에 제가 기입해 놓은것처럼

3차에 대해서는 0,

2차에 대해서는 2/3

1차에 대해서는 0

0차에 대해서는 2가 되어야 된다는 조건에서

라는 값이 구해집니다.

 

최종적으로 2point Gauss quadrature는 다음과 같습니다.

 

 

 

반응형
반응형

http://kevin0960.tistory.com/182

 

 

일반적으로 5차 이상의 방정식의 일반적인 해를 구할 수 없다는 사실은 잘 알려져 있다. 하지만 컴퓨터로 종종 5차 이상의 방정식의 해를 구할 필요가 생기게 된다. 이 때, 사람들은 뉴턴(Issac Newton) 과 랩슨(Joseph Raphson) 이 개발한 뉴턴-랩슨 법, 또는 그냥 뉴턴 법이라 알려진 방법을 이용하면 해의 근사치를 쉽게 구할 수 있다. 뉴튼 랩슨법은 상당히 단순함에도 불구하고 다항식의 해에 '매우 빠르게' 근접할 수 있다. 대부분의 경우 4 ~ 5회 정도 시행하게 된다면 10-⁴정도의 오차 내로 해를 구할 수 있게 된다. 
 


  어떤 함수 ƒ : [ab] → 가 구간 [ab] 에서 미분 가능하다고 하자. (이 때, 이 함수의 해가 구간 [a,b] 안에 있다고 가정하자) 그렇다면 해로 추정되는 값x을 생각할 수 있다. 따라서 xn 에서의 접선을 구해서 그 접선의 x 절편xn+1 을 구한다면 그 점은 xn 보다 좀더 해에 근접하여 있을 것이다. (위 그림에 잘 나타나어 있다) 마찬가지 방법으로 위 작업을 계속 시행해 나간다면 결과적으로 위 함수 f 의 해 x 에 수렴하게 될 것이다. 
(이 사실은 여기에 보면 잘 나타나 있다)

  위 작업을 수식으로 표현한다면 아래와 같다.

  


  이 때, f'(x) 는 f(x) 의 1계 도함수 이다. 위 식을 다시 정리한다면



  가 된다.

  초기에 x를 어떻게 잡을 지는 큰 상관이 없다. 되도록 해에 근접한 값 일수록 해에 빠르게 가까워 지지만 구간 [a,b] 내 에서 어떠한 값을 잡아도 해를 구하는데 에는 큰 문자게 없다. 이 때 한 가지 주의해야 할 점은 ƒ'(x0) ≠ 0 가 되게 잡아야 한다. 

  자, 그럼 위 뉴튼 랩슨 법을 실제로 적용 시켜 보자. 



  우리는 위 단순한 이차 방정식의 x 값을 뉴튼 랩슨법으로 구해보는 연습을 해 볼것이다. 일단, 위 방정식의 해 x 는 아래 함수의 해 라고 말할 수 있다.



  또한, 간단한 미분을 통해 위 함수 f 의 도함수 f' 를 구할 수 있다. 



  이 때, 위 f(x) 는 모든 실수에 대해 미분 가능하므로 굳이 구간을 따질 필요가 없다. 따라서, 초기의 값 x를 10 이라 하고 계산해 보자. 



  결과적으로 우리는 5 회만 계산했는데도 불구하고 위 방정식의 해를 소수점 7 번째 자리 까지 얻을 수 있었다. 보통 컴퓨터는 오차 이하 범위 까지 계산 한 후 계산을 중지한다. 

  뉴튼 랩슨 법은 다항 함수에 대해서만 적용되는 것이 아니라 다항 함수가 아니여도 조건들을 만족한다면 똑같은 방법으로 해를 구할 수 있다. 이번에는 cos x = x3 의 해를 구해 보도록 하자. 이는 아래 함수의 해 이다.



  우리는 cos x 의 범위가 -1 부터 1 사이라는 것을 알고, 위 함수가 그 구간 내에서 미분 가능하다는 사실을 알고 있다. 또한 x > 1 이라면 x3 > 1 임을 알기 때문에  -1 < x < 1 이여야 하는 사실도 안다. 따라서 초기 값 x0 = 0.5 로 설정하자. 위 함수의 도함수를 구하면



가 된다. 이 때 마찬가지 방법으로 뉴튼 랩슨 법을 적용 시킨다면



로 6 회 만에 소수점 13 자리 까지 매우 정확한 해를 구할 수 있게 된다. 

  뉴튼 랩슨 법을 사용시 반드시 주의해야 할 점은 일단 그 함수가 미분 가능한 것인지 판단해야 하며 (다항 함수는 모두 미분 가능하다),  시작점에서 값이 0 이 되지 않는지 꼭 체크해 주어야 정확한 해를 구할 수 있게 된다. (물론 시작점에서 값이 0 이 된다면 나눗셈 오류가 발생하겠지만..) 

반응형
반응형

원문 :  http://hg0303.blog.me/20121664183

 

 

 

원뿔곡선론 (1) : 원뿔곡선의 역사와 의미

원뿔곡선론 (2) : 원뿔곡선은 이차곡선이다 - 논증기하학적 증명

원뿔곡선론 (3) : 원뿔곡선은 이차곡선이다 - 해석기하학적 증명

원뿔곡선론 (4) : 현실적 원뿔곡선

 

 

 

1

원뿔곡선은 쌍직원뿔을 평면으로 잘랐을 때 그 단면으로 나타나는 곡선들을 의미한다.

원뿔의 축과 절단면이 이루는 각을 θ, 원뿔의 반꼭지각을 α라 하면,

0≤θ<α일 때 쌍곡선(직선쌍), θ=α 일 때 포물선(직선), α<θ≤π/2일 때 타원(원, 점)이 된다.

이렇듯 원뿔곡선은 이차함수로 그려지는 이차곡선과 일치한다.

 

 

 

2

이차곡선들은 데카르트에 의해 대수와 기하가 결합되기 전까지는 의미를 갖지 못했다.

대신 포물선은 포물선대로 '직선과 한 점에서 같은 거리에 있는 점들의 집합' 으로,

타원은 타원대로 '두 점에서 거리의 합이 같은 점들의 집합' 으로,

그리고 쌍곡선은 쌍곡선대로 '두 점에서 거리의 차가 같은 점들의 집합' 으로 정의되어 있었다.

이러한 정의상의 유사성으로 이들은 하나로 묶여 있긴 했지만 이런 '묶음'은 허술한 묶음이었고 수학적인 진리는 찾기 힘들었다.

 

3

이것들을 첫번째로 원뿔곡선으로 이름붙인 사람은 고대 그리스의 메나에크무스인 것으로 알려져 있다.

메나에크무스가 직접 쓴 저서는 전해지지 않지만, 다수의 후대 수학자들의 참고문헌에서 발견되고 있다.

그러나 약간 다른 점은 메나에크무스의 원뿔곡선은 절단면을 모선에 수직으로 둔 채 원뿔의 꼭지각을 변화시켰다는 점이다.

어쨌거나 원뿔곡선에 대해 연구한 것으로 기록된 첫 번째 사람이 되었다.

 

4

이 때부터 포물선과 쌍곡선과 타원은 원뿔곡선이라는 이름으로 단단하게 결합될 수 있었다.

유클리드는 원뿔곡선에 대해 4권의 책을 썼고(모두 유실), 아르키메데스는 '착출법'(삼각형을 이용한 구분구적법)을 이용해 타원과 포물선의 넓이를 계산했다.

 

5

'원뿔곡선에 대한 연구'가 '원뿔곡선론'이 되게 하는 데 가장 큰 역할을 한 사람이 바로 페르가의 아폴로니우스이다.

익숙한가? 아폴로니우스의 원(두 점까지의 거리가 일정 비율인 점들의 집합은 원), 아폴로니우스의 문제(세 원에 동시에 접하는 원들), ...

바로 그 아폴로니우스가 이 아폴로니우스다.

아폴로니우스는 1에서 설명한 바와 같이 모든 원뿔의 모든 절단면에 대해 원뿔곡선이 포물선, 쌍곡선, 타원이라는 것을 밝혔고,

그의 증명은 현대의 기하학으로 볼 때도 고칠게 거의 없을 정도로 참신하고 정확해서 아직까지도 (거의) 그대로 사용되고 있다.

 

6

아폴로니우스는 원뿔곡선론의 책을 8권 썼고, 이는 모두 아라비아에도 전해졌다.

특히 페르시아의 오마르 키얌(오마르 하이얌)은 방정식을 다루는 데에 능해 일찍이 이항정리를 발견하였으며,

또한 원뿔곡선이 포물선, 쌍곡선, 타원이라는 것을 (아라비아식)방정식으로 증명하였다.

 

7

데카르트의 해석기하학 이후 원뿔곡선은 이차곡선이 되어 해석학적으로 연구되기 시작했다.

케플러는 브라헤의 관측결과를 바탕으로 행성의 궤도가 타원이라는 것을 예측하였고, 뉴턴은 만유인력의 법칙을 이용해 수리물리학적으로 이를 증명하였다.

데카르트 또한 원뿔곡선과 이차곡선의 동일성을 자신의 학문을 이용해 새롭게 증명하였다.

 

8

데자르그와 파스칼은 사영기하학을 이용해 원뿔곡선에 대한 기하학 정리를 특히 많이 발견했다.

특히 이를 이용하면 원에서 성립하는 것은 (보통) 타원에서도 성립하며, 포물선에서도, 쌍곡선에서도 성립한다는 것을 보일 수 있다.

파스칼의 정리는 원에 내접하는 육각형이 있을 때 세 쌍의 대변의 연장선이 만나는 세 점은 한 직선 위에 있다는 것이다.

여기서 원이 아니라 타원이나 포물선이나 쌍곡선이어도 성립한다는 것을 알 수 있다.

반응형
반응형



블로그 이미지

3DMP engines

3D그래픽스 물리 수학, 프로그래밍 GPU Shader 게임엔진 알고리즘 디자인패턴 matlab etc..


 

아래 과정이 조금 긴감이 있어서 간략하게 중요부분을 살짝 짚어보자면..


 y'' 와 y' 그리고 y 와 구해져 있는 해 y1 를 동차 선형미방식의 기본꼴에 넣어

 

구하고자하는 y = 에 대하여 풀이를 해보니

 

구하고자하는 다른 하나의 y2 = y1  ∫ (  (e^- ∫ pdx)/y1^2 ) dx  의 식이 나온다 여기서 p =p(x) 는

 

y'' 의 개수가 1인 표준형으로 만들었을때의 상태를 만들 수 있으면 

 

y'' + P(x)y' + Qy=0 일때의 P(x) 값이다

 

a2(x)y'' + a1(x)y' + a0(x)y=0 일때 이것을 표준형

 

y'' + a1(x)/a2(x)y' + a0(x)/a2(x)y=0  으로 만들었을때의 값이다 p(x) = a1(x)/a2(x)

 

 




아래부터는 첨부내용




어떤 선형미방식이 하나 주어진다

 

x^2y'' - 6y = 0 이처럼 그리고 이에 대한 해 2개 중 하나가 주어진다 y1 = x^3

 

x^2y'' - 6y = 0  은 =0 임으로 동차미방으로써 해는 무수히 많을 수 있지만

 

2개의 해를 일차 독립으로 나타낼 수 있다면 이것을 x^2y'' - 6y = 0  의 일반해라 한다

 

 

 

 

계수 저하법, 계수 낮추기는 구해진 하나의 해에서 다른 하나를 구해나가는 방식이다

 

 

 

우선 1차 독립은 두개의 해를 선형결합으로 나타내면서 각 해의 상수 값이 c1=0, c2=0 일때만 1차 독립이라 한다

 

그리고 1차 종속은  두개의 해에 대한 선형결합 !=0  일때를 말한다 (!= 은 양변이 같지 않다를 나타냄)

 

일차독립일때 두개의 해를 y1,y2 라 한다면

 

y2/y1 = 상수가 아닌게 된다

 

c1y1,  c2y2

 가 둘다 0 일때만 일차 독립임으로 y2/y1 의 비는 어떠한 상수로 풀이되지 않는다(어떤 함수로 풀이됨)

 

1차 종속이면 한 해가 다른 해의 상수배가 된다

(이에대한 자세한 내용은 첨부파일을 확인)

 

 

그래서 두개의 해중 구해야할 해가 하나 있음으로 구해야 할 것을 y 로 놓고 풀어나간다

 

y2/y1 = u(x) 라고 놓으면

 

y2 = u(x)y1

 

y2 를 구해야 할 것으로 놓는다면

 

y = u(x)x^3 으로 놓고 풀어나갈 수 있다

 

 

이때 구해야 할 y 는   x^2y'' - 6y = 0  식에 대한  -6y 의 y 로 볼 수 있다

 

 

그래서

 

 

y = u(x)x^3          [식.0] 을

 

y' = (u(x)x^3)'     [식.1]

y'' = (u(x)x^3)''   [식.2]

 

 

로 두번 미분하면 x^2y'' - 6y = 0  의 식에서 x^2y''  은 y  를 두번미분한 [식.2]에 x^2를 곱한것과 같다 할 수 있다

 

 

x^2y'' = x^2(u(x)x^3)''

 

이렇게.....  음.. 그렇지..

 

그럼 -6y 도 -6 * [식.0] 해서

 

x^2y'' - 6y = f(x,y)

 

f(x,y) 를 구하면 이 식이   x^4(xu'' + 6u')=0 꼴로 나타남을 알 수 있다

 

[여기서 x 에다가 0 을 넣어서 전체가 0 이 되게 만들면 의미가 없다, 구하려는 것은

  y=x 의 두개의 해이다 즉 미방의 해는 y=x 로 풀이 되는 함수를 구하는 것임으로]

 

그럼 여기서 xu'' + 6u' = 0 이 될때 전체가 0 이 됨으로

 

이것은 곳 미방풀이가 된다  이때 치환을 하여 풀어 나간다 u=u(x) ,  u'=w , w' = u ''

 

xw' + 6w = 0

 

이리하여

 

 

w' + 6/xw = 0 가 되어 이 식의 해를 구할 수 있는 적분인자 e^∫ 6/x dx

 

를 구해 w' + 6/xw = 0 에 곱하여 { x^6w }'=0  를 구하고

 

{ x^6w }'=0 을 적분해

 

x^6w = C0

 

를 구한 후

 

w = C0x^-6

 

에서 w 치환 한것을 다시 원상복귀

 

u' = C0x^-6     ,그럼 이것을 다시 x 에 대하여 적분을 하면 u 를 구할 수 있다 u 는 x 에 대한 함수 임으로

 

u =  ∫ C0x^-6 dx

 

이렇게 구한 u 를 처음의 ㅅㄱ

 

y = u x^3 에 u 자리에 이것을 넣으면

 

 

y 는 구하려고 하는 나머지 하나의 해

y = ∫ C0x^-6 dx *  x^3

 

 

이렇게 하여 나머지 y 를 구할 수 있고

 

 

C1구한y + C2x^3=0 이면 1차 독립

 

 

구한 y 를 Y 라고 해놓고

 

Y 와 원래 구해져 있던 x^3 과 1차 독립을 이루는 지 확인하기 위해

 

 

론스키 행렬식을 구해 0 이 아닌 행렬값이 나오면 1차 독립이다

 

론스키 행렬식

 

| Y   x^3 |

| Y'  x^3'|  != 0   이면 1차 독립 으로써 Y' 과 x^3  즉

 

C1Y + C2x^3=0

 

이것이  동차2계선형미방의 해가 된다

 

반응형

'수학 (Mathematics) > 공업수학' 카테고리의 다른 글

고차 방정식의 해 구하기 (뉴튼 - 랩슨법, Newton-Rahpson  (0) 2012.11.03
원뿔곡선  (0) 2012.11.03
수학 상수표현  (0) 2012.11.03
미분연산자  (0) 2012.11.03
비동차의 일반해 구하는 로직  (0) 2012.11.03
반응형

수학에서 상수란 그 값이 변하지 않는 불변량으로, 변수의 반대말이다. 물리 상수와는 달리, 수학 상수는 물리적 측정과는 상관없이 정의된다.

수학 상수는 대개 실수체나 복소수체의 원소이다. 우리가 이야기할 수 있는 상수는 (거의 대부분 계산 가능한) 정의가능한 수이다.

[편집]수학 상수표

기호이름분류N알려진 때알려진 소수점 자릿수
π≈ 3.14159 26535 89793 23846 26433 83279 50288원주율일반초월수고대1,241,177,300,000
e≈ 2.71828 18284 59045 23536 02874 71352 66249네이피어 수, 자연로그의 밑일반초월수1618년12,884,901,000
√2≈ 1.41421 35623 73095 04880 16887 24209 698072의 제곱근일반대수적 수,무리수고대137,438,953,444
γ≈ 0.57721 56649 01532 86060 65120 90082 40243오일러-마스케로니 상수일반,수론 ?1735년108,000,000
φ≈ 1.61803 39887 49894 84820 45868 34365 63811황금비일반대수적 수,무리수고대3,141,000,000
β*≈ 0.70258엠브레-트레페텐 상수수론 ? ? ?
δ≈ 4.66920 16091 02990 67185 32038 20466 20161파이겐바움 상수카오스 이론 ?1975년 ?
α≈ 2.50290 78750 95892 82228 39028 73218 21578파이겐바움 상수카오스 이론 ? ? ?
C2≈ 0.66016 18158 46869 57392 78121 10014 55577쌍둥이 소수 상수수론 ? ?5,020
M1≈ 0.26149 72128 47642 78375 54268 38608 69585메이쎌-메르텐스 상수(Meissel-Mertens constant)수론 ?1866년
1874년
8,010
B2≈ 1.90216 05823쌍둥이 소수에 대한 브룬 상수 (Brun's constant)수론 ?1919년10
B4≈ 0.87058 83800소수 쿼드러플릿 (prime quadruplet)에 대한 브룬상수 (Brun's constant)수론 ? ? ?
Λ– 2.7 · 10-9드 브루인-뉴먼 상수 (de Bruijn-Newman constant)수론 ?1950년? ?
G≈ 0.91596 55941 77219 01505 46035 14932 38411카탈란 상수 (Catalan's constant)조합론 ? ?15,510,000,000
K≈ 0.76422 36535 89220 66란다우-라마누잔 상수수론무리수(?) ?30,010
K≈ 1.13198 824(Viswanath's constant 1)수론 ? ?8
L≈ 0.5란다우 상수 (Landau's constant)해석학 ? ?1
L= 1르장드르 상수(Legendre's constant)수론 ? ? ?
μ≈ 1.45136 92348 83381 05028 39684 85892 027라마누잔-솔드너 상수(Ramanujan-Soldner's constant), 솔드너 상수(Soldner's constant)수론 ? ?75,500
EB≈ 1.60669 51524 15291 763에어디쉬-보어와인 상수 (Erdös-Borwein's constant)수론무리수 ? ?

반응형
반응형

블로그 이미지

3DMP engines

3D그래픽스 물리 수학, 프로그래밍 GPU Shader 게임엔진 알고리즘 디자인패턴 matlab etc..



d/dx = D 로 표현한것 D 를 미분 연산자

 

D^2 e^3x = 9e^3x

 

즉 e^3x 을 x에 대하여 두번 미분하라

반응형
반응형

블로그 이미지

3DMP engines

3D그래픽스 물리 수학, 프로그래밍 GPU Shader 게임엔진 알고리즘 디자인패턴 matlab etc..




 

 

어떤 비동차식 L(y) !=0 가 있을 경우

 

 

  1. L(y)의 해를 하나 구한다   y_p(x) 하나 구해놓고
  2. 비동차 L(y) 에서   L(y) = 0 의 꼴로 놓아 L(y)=0인 동차의 일반해를 구한다
  3. 2번에서 구한 일반해 + 1번에서 구한 y_p(x) 를 더하면 L(y) !=0 비동차인 일반해를 구할 수 있게 된다

 

L(y) 가 원래 선형결합 이였다는 점을 이용하여 L(y) 의 y  인자에 3번에서 구한 해를 대입해서

풀어보면 => L 을 분배법칙처럼 분해

 

동차로 구성되는 성분은 0 이 되고 이 외의 성분은  L(y_p(x))  으로 떨어지게 되어

 

결과적으로 동차의 성분을 구한다면 0 이 되어버리게 하는 비동차방정식의 해를 구할 수 있기 때문에

 

0 + L(y_p(x)) 이 되어 비동차방정식의 해를 구할 수 있게 된다

 

 

0 + L(y_p(x)) = 동차방정식의일반해 + L(y_p(x))

 

반응형
반응형


블로그 이미지

3DMP engines

3D그래픽스 물리 수학, 프로그래밍 GPU Shader 게임엔진 알고리즘 디자인패턴 matlab etc..




한개 또는 그 이상의 종속 변수를 한개 또는 그 이상의 독립변수에 대해 미분한 도함수들을 포함하는

방정식을 미분방정식이라고 한다


y는 원래 있는 거라 치고

방정식인데 y' 가 방정식 안에 들어가 있는 식을 말한다




y =x + 1

독립변수 = x
종속변수 = y

[유형에 따라..]
  상미분 방정식 : 독립변수가 1개

  편미분 방정식 : 독립변수가 2개 이상

[계수에 따라...] => 1계, 2계,.... ,n 계  (여기에서 계(계수란)) y를 미분한 횟수 y'(=1계 미분이라 하며 가장 높은 계를 기준으로 n계 미분방정식이라 한다)


d^2 y/dx + dy/dx + y =0  2계 미분방정식



[선형성에 따라...]

   선형미분방정식 = (y는 x 에 대한 함수 일때 )
        1. y(or y^n) 를 기준으로 이것들이 1차(1승)의 항으로 결합된 방정식
        2. y''  - 3y' + y =0 이라 할때 1. 을 마족한 상태에서 각 y 의 계수가 숫자나 x 로 곱해져 있으면
           이것을 선형 미분방정식이라 한다
            ex) y' + 4xy = x  => 1계 선형미분방정식

   비선형미분방정식
         (1-y)y' + 2y = e^x 에서 y' 의 계수가 x 가 아닌 y 에 관한 변수 y 를 포팜하고 있으면 비선형
         즉 x or 상수가 y^n 앞에 계수로 오면 선형인데 그 외는 비선형이다

반응형
반응형


블로그 이미지

3DMP engines

3D그래픽스 물리 수학, 프로그래밍 GPU Shader 게임엔진 알고리즘 디자인패턴 matlab etc..






론스키 행렬식은 함수가 1차 독립인가를 행렬식 으로 알아 볼 수 있는 방법이다 

론스키 행렬식 = 함수를 행렬식으로 풀어 일차독립인지 알아봄


w(e^x,e^2x) = 
|e^x         e^2x     |
|de^x/dt   de^2x/dt|

을 행렬식으로 풀어 나온 결과가 e^3x인데 이것은 x에 어떤 값을 넣어도 결고가 0 이 나오지 않기때문에

w(e^x,e^2x) 에서의
e^x,e^2x 두개의 함수는 1차 독립이다






[1차 독립일때]



V1 + V2  을

상수 C1, C2 를 각각에 곱해 + 로 연결한 것을

C1V1 + C2V2 => 선형 결합 이라고 하며

이때 


C1V1 + C2V2 = 0 이 되는 것이

C1,C2 가

C1=C2=0 일때만 C1V1 + C2V2 = 0 이 성립되는 것을

1차 독립이라고 한다


x + 2x = 0 은 1차 독립이 아니다

ax + 2x => a =-2 면 0 이 됨으로

e^x * e^2x 은

a1 e^x * a2 e^2x => a1=a2=0 일 때만 결과가 0 이 되면 1차 독립

이게 a1=a2=0 가 0 일때만 결과가 0 이 되는지는 검증을 해봐야 되는데 아무튼... 

상수가 0 인가 그리고 그때뿐인가가 중요한 포인트





[행렬식]




행렬식

위키백과, 우리 모두의 백과사전.

선형대수학에서 행렬식(行列式 ; determinant)은 정사각행렬에 수를 대응시키는 함수이다. 예를 들면, 2x2 행렬

A=\begin{bmatrix}a&b\\
c&d\end{bmatrix}

에 대해, 행렬식은

\det(A)=ad-bc

이 된다.

[편집]역사와 응용

역사적으로 행렬식(determinant)은 행렬보다 앞서 나온 개념으로, 원래는 연립 선형방정식의 성질을 결정하기 위해 정의되었다. 행렬식은 연립방정식이 유일한 해를 갖는지(행렬식이 0이 아닐 때)를 결정한다. 16세기에 지롤라모 카르다노가 2x2 행렬의 행렬식을, 100년 정도 후에는 고트프리트 라이프니츠가 2x2 이상의 행렬의 행렬식을 이런 식으로 사용했다.

행렬식은 가역행렬의 성질을 말해주며, 방정식의 근의 공식인 크래머공식에도 등장한다. 행렬식은 또한 행렬 A 의 고유치를 구하는 특성다항식에도 나온다. (특성다항식 p(x) = \det(A - xI_n)).

행렬식은 또한 정사각행렬의 각 열벡터를 R_n의 벡터로 파악하여, 순서있는 n개의 R_n 벡터에 대응하는 수라고 생각할 수도 있다. 이 때에 행렬식의 부호는 유클리드 공간의 기저(basis)의 향 (선형대수학)(orientation)을 정의한다고 할 수 있다.

행렬식은 벡터미적분학에서 부피를 계산하는 데에 쓰일 수도 있다. 실벡터들로 이루어진 행렬의 행렬식의 절대값은 그 벡터들을 각 변으로 갖는 평행육면체의 부피와 같다. 그 결과로, 선형변환 f:\, R_n \to R_n 가 행렬 A 로 표현되고, S 가 R_n의 가측(可測: measurable) 부분집합일 때, f(S)의 부피는 |\det(A)| \cdot \operatorname{volume}(S) 로 주어진다. 일반적으로, 선형사상 f:\, R_n \to R_m 이 m \times n 행렬 A 로 표현되고, R_n의 S 가 가측 부분집합일 때,f(S)의 n 차원의 부피는 \sqrt {\det(A^T A)} \cdot \operatorname{volume}(S) 로 주어진다.

[편집]정의와 계산

A = (A_{i,j}) 가 정사각행렬이라 하자.

1 x 1 행렬일 때,

\det(A) = A_{1,1}

2 x 2 행렬이면,

\det(A) = A_{1,1} \cdot A_{2,2} - A_{2,1} \cdot A_{1,2}

3 x 3 행렬에선 공식이 조금 복잡해진다.


\begin{align}
\det(A) = & A_{1,1} \cdot A_{2,2} \cdot A_{3,3} + A_{1,3} \cdot A_{3,2} \cdot A_{2,1} + A_{1,2} \cdot A_{2,3} \cdot A_{3,1} \\
        - & A_{3,1} \cdot A_{2,2} \cdot A_{1,3} - A_{1,1} \cdot A_{2,3} \cdot A_{3,2} - A_{1,2} \cdot A_{2,1} \cdot A_{3,3}
\end{align}

일반적인 n x n 행렬에 대해서 이야기하기 이전에 다음과 같은 것을 염두에 두자.

  • \det(I_n) = 1
  • \det(한 번 행을 바꾼 행렬= - det(원래 행렬)
  • 첫 행에 대해 linearity가 성립한다.
\begin{bmatrix}a\mathbf{r_1} + b\mathbf{r_2}\\...\end{bmatrix} = \begin{bmatrix}a\mathbf{r_1}\\...\end{bmatrix} + \begin{bmatrix}b\mathbf{r_2}\\...\end{bmatrix}

이 세 가지 성질을 가진 함수를 행렬식(determinant, 준말 det)이라고 정의한다. 이 성질이 2 x 2 행렬에서 성립함은 쉽게 알 수 있고, 또한 이는 각 n x n 행렬마다 유일하게 존재하는 함수임을 증명할 수 있다. 그 일반식은 고트프리트 라이프니츠의 라이프니츠 공식에 따라,

\det(A) = \sum_{\sigma \in S_n} 
\operatorname{sgn}(\sigma) \prod_{i=1}^n A_{i, \sigma(i)}

이 된다. 합은 {1, \cdots , n}의 모든 치환(permutation)인 \sigma 에 대해 이루어지고, \operatorname{sgn}(\sigma) 는 치환의 부호로 우치환(짝치환, even permutation)일 때 +1, 기치환(홀치환, odd permutation)일 때 -1의 값을 갖는다.

위 공식은 n! 의 합을 포함하고 있어서, n > 3일 때는 실제적으로 사용하기 힘들다.

일반적으로, 행렬식은 가우스-요르단 소거법을 이용해 구할 수 있으며, 그 내용은 다음과 같다.

  • A 행렬이 삼각행렬이면, 즉 i > j일 때, 혹은 i < j일 때, A_{i,j} = 0이면, \det(A) = A_{1,1} A_{2,2} \cdots A_{n,n} = \prod_{i=1}^n A_{i,i}이다.
  • A 행렬의 두 열이나 두 행을 서로 바꿔서 B 행렬을 얻었다면, \det(B) = - \det(A)이다.
  • A 행렬에 상수 c를 곱하여 B 행렬을 얻었다면, \det(B) = c^n \cdot det(A)이다.
  • A 행렬의 한 행이나 열에 상수배를 해서 다른 행이나 열에 더해서 B 행렬을 얻었다면, \det(B) = \det(A)이다.

[편집]성질

행렬식은 곱셈적 사상의 일종이다.

모든 정사각(n-by-n) 행렬 A와 B에 대해 \det(AB) = \det(A)\det(B) 이다.

\det(rI) = r^n이므로 모든 n-by-n 행렬 A와 스칼라값 r에 대해 다음 식이 성립한다.

\det(rA) = r^n \det(A)

A의 역행렬이 존재하면 다음 식이 성립한다.

\det(A^{-1}) = \det(A)^{-1}

어떤 행렬과 그 행렬의 전치행렬은 같은 행렬식 값을 가진다.

\det(A) = \det(A^\mathrm{T})





반응형
반응형

블로그 이미지

3DMP engines

3D그래픽스 물리 수학, 프로그래밍 GPU Shader 게임엔진 알고리즘 디자인패턴 matlab etc..






x= x(t)

 

학교안의 사람이 1000 명이 있는데

 

다른곳에서 1 명의 학생이 1000명이 있는 학교로 들어왔다

 

감염속도가 감염학생 수 x에 비례할 뿐만 아니라 비감염 학생수에도 비례한다면

 

6개월 후 감염자수는?, 단 4일 후 감염자수 x(4) = 50 

 

 

학교안에 1000명

 

x(t) = 감염자 함수

 

dx/dt = 감염되는 속도

 

 

 

 

dx/dt = kx( 1000 -x )  , k  는 어떤 실수

 

두개에 대하여 비례하는 식

 

이렇게 놓고 변수분리 하여 적분해 푼다

 

변수 분리  : t,dt 끼리 x,dx 끼리 = 기준으로 분리

 

 

하여 x(t) 함수를 찾아낸다음 6개월 후 감염자수를 구한다

 

 

반응형
반응형

http://kin.naver.com/qna/detail.nhn?d1id=11&dirId=1113&docId=56735850&qb=67mE7ISg7ZiV66+467aE67Cp7KCV7Iud&enc=utf8&section=kin&rank=1&search_sort=0&spq=0&pid=gATxEc5Y7vosscvWKElssc--072354&sid=TiWxmPKbJU4AAHDtGpU

 

 

y와 y의 도함수들에 대해서 1차이면 선형미분방정식, 그렇지 않으면 비선형 미분방정식입니다.

 

즉, y2, (y')2, y y'  이런 항이 있으면 비선형방정식입니다.

 

 

수식으로 써보면

an(x) y(n) (x) + an-1(x) y(n-1) (x) + ......+ a1(x) y' (x) + a0(x) y (x) + b(x) = 0

 

이런꼴은 n계 선형 상미분방정식이고, 이 외의 꼴은 다 비선형입니다.

 

 

 

y' = 5y ; 3y'-sin x = 0은 모두 위의 꼴이므로 선형미분방정식,

(y"')² + (y")5 -y'=ex 은 위의 꼴이 아니므로( (y"')², (y")5항이 있으므로) 비선형 미분방정식.

 




복사http://bluerein_.blog.me/80128459471





미분 방정식이 뭘까.

미분 방정식은 이런 거다.


x에 관한 함수 y가 있다. 그리고 y가 미분가능하다.


예를 들어 다음과 같은 식이 있다고 하자.



일단 방정식이다.

근데 미지수로 y와 y의 도함수들이 와잇다.

우왕 쇼킹해!


여기서 잠시만 설명할 것이 있다.



"y의 최고계 도함수를 이 미방의 '계수'라고 한닷!" (두둥)


괜히 오덕티내며 두둥이라닠ㅋㅋㅋㅋ


따라서 예시로 제시한 저 미방을 우리는 '2계 미분방정식이다!'

라고 말할 수 있다.


또 보자.

저 방정식의 y와 y의 도함수들은 전부 1차이다!

우리는 1차함수 y=ax+b를 '선형함수'1라는 말을 쓴다. 선형(linear)라는 말은 곧 1차이다.


따라서 예시로 제시한 저 미방과 같이 y와 y의 도함수들이 전부 1차일때 '선형 미분방정식'이라고 한다.

선형이 아닌 건 비선형이라고 한다.


또 남았다.

저기에 계수로 곱해져있는 a, b, c와 상수항 d는(사실 상수항이 아니지만 일반적인 방정식으로 보면...) 모두 '독립변수에 대한 함수!'이다.

사실은 독립변수가 t라고 하면 a(t), b(t), c(t), d(t)라고 표기해야 맞을 것이다. 근데 귀찮아서 저리써놨다.


여기서 주목할 것은 d(t)이다.


d(t)=0이면 '제차 미분방정식'이라고 한다.

d(t)!=0이면 '비제차 미분방정식'이라고 한다. (!=는 not equal의 뜻)


이번엔 해에 대해서 알아보자.


해가 딱딱 떨어지는 대수방정식(algebra equation)에 비해서 미분방정식은 다양한 해가 존재할 수 있다!

우선 미분하면 상수항은 없어진다. 따라서 미분방정식의 해를 풀면 사라졌던 상수항(적분상수같은 놈)이 다시 생겨야한다.

이때

'임의의 상수 c를 포함하는 해 y'를 '일반해'라고 한다. 마치 삼각방정식을 보는 듯 하다.

그런데 문제에 따라 초기조건이 주어져서 구하라는 것이 있다. 그건 '초기조건에 만족하는 c를 찾으란 말야!'라는 것이다.

그렇게 하면 c가 어떤 하나의 값으로 확정되어진다. 그런 해 y를 '특수해'라고 한다.


근데 문제는 이게 아니다. 일반해 꼴도 아닌 것이 미방에 대입하면 성립하는 놈이 생긴다!(아마 꼭 생기는 건 아닐것이다.) 이런 시발!

그런 해 y를 '특이해'라고 한다.

예를 들어보자.


의 일반해는

 

이다. (의심가는 사람은 직접 대입해보자<<<<)

참고로 상수 c는 미분방정식의 '계수(order)' 만큼 생긴다. 위의 방정식이 2계 미분방정식이므로 c는 2개가 생겨야한다.


근데

만약에

y(0)=1, y'(0)=-1

이라는 조건이 붙어있다고 하자.

그럼 대입한다. 그럼 c_1=1, c_2=-1이라는 해를 얻어서

y=cosx-sinx라는 '특수해'를 얻는다.


음 특이해는...... ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 저 방정식 만들었을때 y=0이 특이해라고 생각햇는데 풀고보니 특수해임....

여튼! 그런 해가 간혹가다 생김.

반응형

+ Recent posts