https://github.com/DevStarSJ/Study/blob/master/Blog/Python/DoingMathWithPython/DoingMathWithPython.Ch04.ipynb
• 원서명 : Doing Math with Python: Use Programming to Explore Algebra,
Statistics, Calculus, More! (ISBN 9781593276409)
• 지은이 : 아미트 사하(Amit Saha)
• 원서 및 관련자료 : https://www.nostarch.com/doingmathwithpython
• 번역서 : http://www.acornpub.co.kr/book/doing-math-with-python
3
 Sympy를 이용하여 대수(Algebra) 문제를 부호(Symbolic) 수학으로 풀이하는 것이 가능
4
 Symbol을 이용해서 객체를 따로 생성
 symbols을 이용해서 객체를 한번에 생성
5
 factor() : 요소화(인수분해) • expand() : 전개
6
 pprint() : 수식을 보기 좋게 출력
 init_printing() : 수식 출력 순서를 지정할수 있음
http://docs.sympy.org/dev/modules/physics/vector/api/printing.html
7
8
 subs() : 심볼과 값을 dictionary로 전달하면 대체됨
9
 simplify() : 수식을 간략화 해줌
10
 simpify() : 입력된 문자열을 수식으로 변환
11
 simpify()의 예외는 sympy.core.sympify 내의 SympifyError에 정의
12
 solve()로 방정식의 해를 찾음 (해당 수식의 값이 0이 될꺼라 가정)
 dictionary로 리턴받는 것도 가능
13
 심볼이 여러개 있을 경우 두번째 인자로 입력한 심볼로 전개됨
 나머지 항목에 상수를 넣고 해를 확인
14
 2개의 방정식을 만족하는 하나의 해를 구하고자 할 경우 solve()에 Tuple로 묶어서 전달하면 됨
 해당 해가 맞는지 확인
15
 sympy.plotting을 이용해서 방정식을 그릴수 있음
 축의 범위를 x축 기준 -5에서 5까지로 제한하려면 (x, -5, 5)라는 튜플을 인자로 전달
16
 타이틀, 레이블 추가
 show=False를 이용해서 출력을 하지않고 생성이 가능
 .show()로 출력
 .save(파일명) 으로 이미지로 저장
17
 여러 함수를 한번에 그릴려면 plot() 인자로 여러개의 수식을 전달
https://github.com/DevStarSJ/Study/blob/master/Blog/Python/DoingMathWithPython/DoingMathWithPython.Ch04.ipynb
https://www.nostarch.com/doingmathwithpython
19
2개의 수식을 입력 받아서 그래프로 표시하고, 공통 해를 출력하세요.
20
 summation(n번째 수열, n범위 튜플)을 이용하여 수열 생성이 가능합니다.
21
 n번째 수열과 몇개를 생성할 것인지를 입력받아 해당 수열을 출력하세요.
22
 solve_poly_inequality() 함수를 이용하여 다항 부등식 풀기
23
 solve_rational_inequality() 함수를 이용하여 논리 부등식 풀기
24
 solve_univariate_inequality() 함수를 이용하여 기타 부등식 풀기
25
 수식을 입력받아서 어떤 부등식인지 판단하여 풀어주고 해를 리턴하는 함수를 구현하세요.
 .is_polynomial() 과 .is_rational_function() 을 이용해서 부등식을 구분할 수 있습니다.
Doing math with python.ch04

Doing math with python.ch04