책 소개
머리말이 책은 엔지니어와 공대생(학부생 및 대학원생)을 대상으로 합니다. 컴퓨터 언어에 익숙함이필요합니다. 공학 역학(정역학, 동역학 및 재료 역학)에 대한 지식은 유용하지만 필수는 아닙니다.이 책의 주요 목적은 수치 해석 방법들을 가르치는 것입니다. 이 책에서는 수치 알고리즘을 구현하기에 충분한 Python을 사용하는 것을 소개합니다. 다른 프로그래밍 언어들은 다루지 않습니다.대부분 엔지니어는 프로그래머가 아니라 문제 해결사입니다. 그들은 주어진 문제에 어떤 방법을 적용할 수 있는지, 그들의 장점과 단점이 무엇인지, 그리고 그것들을 구현하는 방법을 알고 싶어합니다. 엔지니어는 기본적 작업을 위한 컴퓨터 코드를 직접 작성하지 않으려 합니다. 이미 작성되고 검증된 함수와 서브 루틴을 사용하고자 합니다. 따라서 엔지니어의 프로그래밍은 기존의 코드 조각들을 일관된 패키지로 조립하여 문제를 해결하는데 국한됩니다.코드의 조각들은 일반적으로 특정 작업을 구현하는 함수입니다. 사용자에게는 코드의 세부 사항이 중요하지 않습니다. 중요한 것은 인터페이스 (무엇이 들어오고 무엇이 나가는지)와 알고리즘의 기반이 되는 방법에 대한 이해입니다. 절대 오류가 없는 수치 알고리즘은 없기 때문에 기본 방법을 이해하는 것이 매우 중요합니다. 이것이 수치해석을 배우는 이유입니다.이 책은 앞에서 설명한 견해를 따르려고 합니다. 각 수치 방법에 대해 자세히 설명하고 그 단점을 지적합니다. 개별 주제 다음에 나오는 예제는 두 가지 범주로 나뉩니다. 각 수치방법의 내부 작업을 설명하는 수계산과 문제 해결에 컴퓨터 코드가 어떻게 사용되는지를 보여주는 작은 프로그램입니다. 프로그래밍이 필요한 문제는 ■로 표시되어 있습니다.이 책은 방정식의 근, 보간 및 회귀, 수치 미분 및 적분, 상미분 방정식의 해 및 고유값 문제 등 공학 과정에서 다루는 일반적인 주제로 구성됩니다. 각 주제 내에서 어떤 수치 방법을 사용할지는 엔지니어링 문제에 따라 선택됩니다. 예를 들어, 연립방정식의 해에서 대칭적이고 드물게 채워진 계수 행렬을 다루는 방법에 대한 광범위한 논의가 있습니다. 같은맥락에서 고유값 문제의 해결 방법은 밴드 행렬에서 특정 고유값을 효율적으로 추출하는방법에 집중합니다.방법 선택에 사용된 중요한 기준은 명확성입니다. 효율성과 견고성에 상관없이 지나치게 복잡한 부기를 요구하는 알고리즘은 거부되었습니다. 이 결정을 하기는 쉽지 않았지만, 이는 프로그래밍에 중점을 두지 않기 위한 것입니다.알고리즘의 선택은 현재 관행에 의해서도 영향을 받았습니다. 잘 알려진 여러 역사적 방법을 대신하여 최근에 개발된 방법들을 선택하였습니다. 예를 들어, 방정식의 근을 찾는 secant 방법은 Ridder의 방법에 비해 이점이 없으므로 생략되었습니다. 같은 이유로 미분 방정식을 해결하는데 사용된 다단계 방법(예: Milne 및 Adams 방법)은 적응적 Runge-Kutta 및 Bulirsch-Stoer 방법으로 대체하였습니다.이 책에는 편미분방정식에 대한 장이 없습니다. 이 주제는 유한요소 또는 경계요소법으로 처리하는 것이 가장 좋으며 이 책의 범위를 벗어나기 때문입니다. 수치해석 책에 일반적으로 도입되는 유한차분모델은 다차원 경계치 문제를 처리하는 데 너무 비실용적입니다.다른 책과 마찬가지로 이 책에도 3학점 과정에서 다룰 수 있는 것보다 더 많은 자료가 들어 있습니다. 연속성을 잃지 않고 건너뛸 수 있는 항목에는 별표 (*)로 표시하였습니다.이 버전의 새로운 내용이 책은 Python 2를 기반으로 한 “Numerical Methods in Engineering with Python”을 계승 합니다. 제목에서 알 수 있듯이 새 버전은 Python 3으로 변환되었습니다. 두 버전이 완전히 호환되지 않기 때문에 거의 모든 컴퓨터 루틴에 약간의 코드 변경이 필요했습니다.우리는 또한 다루는 내용을 약간 변경하였습니다.- Python 플로팅 패키지 matplotlib.pyplot에 대한 소개가 1 장에 추가되었습니다. 이 패키지는 많은 예제 문제에서 사용되어 책을 이전보다 그래픽 중심으로 만듭니다.- 데이터 점과 해당 다항식 보간법을 그림으로 나타내는 plotPoly 함수가 3 장에 추가되 었습니다. 이 프로그램은 보간의 적합도를 평가하는 편리한 방법을 제공합니다.- 검토자들의 제안에 따라, 7 장의 초기치 문제를 해결하는 Taylor 시리즈 방법이 삭제되고 Euler 법으로 대체되었습니다.- 9 장의 고유값 문제를 해결하기 위한 Jacobi 법은 행렬 요소를 제거 대상으로 선택할 때 임계값 방법을 사용합니다. 이 변경으로 알고리즘 속도가 증가합니다.- 7 장의 적응적 Runge-Kutta 법의 프로그램이 다시 작성되었고 Cash-Karp 계수는 Dormand-Prince 계수로 대체되었습니다. 결과적으로 더 엄격한 오차 제어를 통해 보다 효율적인 알고리즘이 됩니다.- 21개의 새로운 문제가 소개되었으며, 대부분 기존 문제들을 대체하였습니다.- 4 장과 7 장의 일부 예제 문제는 재정렬되거나 새로운 문제로 대체되었습니다.소스 코드는 www.cambridge.org/kiusalaaspython에서 제공됩니다.
목차펼치기접기
제 1장 Python 소개 11.1 일반 정보 11.2 코어 Python 41.3 함수(메소드) 및 모듈 181.4 수학 모듈 211.5 numpy 모듈 231.6 matplotlib.pyplot으로 플로팅하기 291.7 변수 범위 지정 321.8 프로그램 작성 및 실행 33제 2장 연립 선형 대수 방정식 372.1 개요 372.2 Gauss 소거법 442.3 LU 분해법 52연습 문제 2.1 642.4 대칭 및 밴드 계수 행렬 692.5 피보팅 80연습 문제 2.2 892.6 역행렬 962.7 반복적인 방법 99연습 문제 2.3 1112.8 다른 방법 116제 3장 보간 및 회귀 1193.1 개요 1193.2 다항식 보간 1203.3 큐빅 스플라인으로 보간 136연습 문제 3.1 1433.4 최소 제곱 적합 146연습 문제 3.2 160제 4장 방정식의 근 1654.1 개요 1654.2 증분탐색법 1664.3 이분법 1684.4 선형 보간에 기반한 방법 1724.5 Newton-Raphson 방법 1784.6 연립방정식 183연습 문제 4.1 1894.7 다항식의 근 196연습 문제 4.2 2044.8 다른 방법들 206제 5장 수치 미분 2075.1 서론 2075.2 유한 차분 2075.3 Richardson 외삽법 2135.4 근사식을 이용한 미분 216연습 문제 5.1 221제 6장 수치적분 2256.1 서론 2256.2 Newton-Cotes 적분공식 2266.3 Romberg 적분공식 236연습 문제 6.1 2416.4 Gauss 적분 246연습 문제 6.2 2626.5 다중 적분 265연습 문제 6.3 278제 7장 초기값 문제 2837.1 서론 2837.2 Euler 법 2847.3 Runge-Kutta 법 290연습 문제 7.1 3027.4 안정성과 경직성 3087.5 적응적 Runge-Kutta 법 3127.6 Bulirsch-Stoer법 322연습 문제 7.2 3307.7 기타 방법 335제 8장 2점 경계값 문제 3378.1 서론 3378.2 사격법 338연습 문제 8.1 3498.3 유한차분법 353연습 문제 8.2 363제 9장 대칭 행렬의 고유값 문제 3699.1 서론 3699.2 Jacobi 방법 3739.3 Power 방법과 Inverse Power 방법 386연습 문제 9.1 3969.4 Householder 변환을 이용한 3중 대각행렬 생성 4029.5 대칭 삼중대각 행렬의 고유값 411연습 문제 9.2 4219.6 다른 방법들 426제 10장 최적화 개론 42710.1 서론 42710.2 1차원 최소화 42910.3 Powell 방법 43610.4 다운힐 심플렉스법 446연습 문제 10.1 454부록 461찾아보기 473
출처: 국립중앙도서관 서지정보
리뷰 남기기
로그인하면 리뷰를 남길 수 있어요.
리뷰 0개
아직 리뷰가 없어요.
