매스매티카
매스매티카(Mathematica)는 스티븐 울프램이 처음 고안하고 Wolfram Research에 의해 개발된 과학, 공학 등에서 널리 사용하는 계산용 소프트웨어이다. 1988년에 버전 1.0을 발매하였으며, 2019년 4월 16일 12.0.0을, 2021년 6월 12.3.1을, 2021년 12월 13일 13을 출시하였으며 2024년 1월 9일 14.0.0이 7월 31일 최신 버전인 14.1.0이 출시되었다.
개발자 | 울프램 리서치 |
---|---|
발표일 | 1988년 6월 23일[1] |
안정화 버전 | 14.1.0
/ 2024년 7월 31일[2] |
프로그래밍 언어 | Wolfram 언어[3], C/C++, 자바[4] |
운영 체제 | 크로스 플랫폼(리스트) |
언어 | 영어, 중국어, 일본어 |
종류 | 프로그래밍 언어, 컴퓨터 대수학 시스템, 그래픽 사용자 인터페이스 |
라이선스 | 사유 소프트웨어 |
웹사이트 | www |
개요
편집매스매티카는 기호적 수학 계산 프로그램으로서 해석적인 계산이 가능하며 컴퓨터 대수학 시스템이라 칭하기도 한다. 매스매티카는 수많은 과학, 공학, 수학 및 컴퓨팅 분야에서 사용되어오고 있다. 예를 들어 어떤 함수의 적분을 구할 때 수치적인 방법으로 적분값을 구하는 것뿐만 아니라 해석적인 방법으로 부정적분 값을 구할 수 있다.
Wolfram Research의 창시자인 스티븐 울프램과 그의 팀은 1986년부터 새로운 수식 처리 시스템의 개발을 시작하여 1988년 그 첫 번째 버전을 출시했다. 울프램은 당초 이 시스템을 Omega 그 후 PolyMath라 칭했으나, 당시 NeXT 사의 사장이었던 스티브 잡스와 상담 후 보다 일반적인 단어를 재해석하여 "Mathematica"라 이름 붙여졌다.[5]
역대 Mathematica의 로고에 사용되고있는 것은 "스파이키"라는 3 차원 다면체로 초대 Mathematica는 대형 이십 면체, 이후 버전에서는 쌍곡선 이십 면체를 장식 한 것이 사용되고있다[6][7].
Mathematica는 C/C++ 및 Java로 구현되어 있지만, 확장 가능한 라이브러리는 모두 Wolfram 언어로 쓰여져있다. 실제로 새로운 코드 (Wolfram 언어로 작성된 텍스트 파일)은 Mathematica의 "패키지 (.m 파일)"로 추가된다. Mathematica는 4,000개 이상의 고도로 정교한 내장 함수[8]를 포함하고 있으며 이것을 빌딩 블록처럼 조합해 사용하는 것으로, 프로그램 생성이 용이하다. 시스템으로의 Mathematica는 Wolfram 언어를 해석하여 실제로 계산을 수행하는 커널과 그 계산 결과를 표시하는 프런트 엔드의 두 부분으로 구성된다. 커널 및 프론트 엔드 사이의 통신은 "MathLink" 프로토콜이 사용된다.
기능
편집매스매티카의 주요 기능[9]
- 초등함수와 특수 함수의 수학적 함수 라이브러리
- sparse arrays 지원을 포함하는 행렬 및 데이터 조작 툴
- 복소수, 임의 정밀도, 구간 산술, 기호적 연산의 지원
- 2D 및 3D 데이터, 함수 및 지리적 시각화, 애니메이션 툴
- 디오판토스 방정식, 상미분방정식, 편미분방정식, 미분대수방정식, 지연미분방정식, 확률미분방정식 그리고 재귀식 등의 방정식 시스템 해법
- 이산 및 연속 미적분학의 수치적 기호적 툴
- 140 가지 이상의 분포 피팅, 가설 검정, 확률 계산, 기대값 계산 다변량 통계학 라이브러리
- 검정 된 데이터, 템포럴 데이터, 시계열 및 유닛 베이스 데이터 지원
- 렌덤 프로세스와 쿼리의 계산 및 시뮬레이션
- 데이터, 이미지, 사운드의 지도 학습 그리고 자율 학습 머신 러닝 툴
- 2D, 3D, 그리고 고차원 계산기하학
- 절차적 프로그래밍, 함수형 프로그래밍 그리고 객체 지향 프로그래밍 등을 지원하는 다중 패러다임 프로그래밍 언어 구성
- 계산 및 응용을 위한 사용자 인터페이스 추가 툴킷
- 이미지 인식을 포함한 영상 처리[10] 그리고 수학 형태학의 2D 및 3D 툴
- 유향 그래프 및 무향 그래프의 시각화 및 분석 툴
- Tools for combinatoric problems
- 문자열 조작 정규식 및 의미 분석을 포함하는 텍스트 마이닝 툴
- 클러스터 분석, 서열 정렬 및 패턴 매칭 등의 데이터 마이닝 툴
- 정수론 함수 라이브러리
- 채권, 연금, 파생 상품, 옵션 거래를 포함한 금융 계산 툴
- 군론 및 기호적 텐서 함수f
- 음향과 이미지 데이터의 웨이블릿 분석을 포함한 신호 처리 라이브러리
- 선형, 비선형 컨트롤 시스템 라이브러리
- 연속 및 이산 적분 변환
- 데이터, 이미지, 동영상, 음향, 컴퓨터 지원 설계, GIS,[11] 문서 및 생의학 등의 다양한 포맷 가져 오기 및 내보내기 필터
- 수학, 과학, 사회 경제 관련 인포 및 WolframAlpha가 제공하는 데이터와 연산에 접근 가능한 데이터 베이스 컬랙션
- 수식 편집기, 자동 리포트 생성기 등 기술 용어 처리
- DLL, SQL, Java, .NET, C++, Fortran, CUDA, OpenCL, 및 http 기반 시스템 연결 툴
- 병렬 프로그래밍 툴
- 인터넷 접속시 "자유 형식 언어 입력" (자연어 사용자 인터페이스)[12][13]과 Wolfram 언어를 노트북에 모두 사용
인터페이스
편집Mathematica는 사용자와 상호 작용할 수 있는 프론트 엔드와 Wolfram 언어 코드로 연산을 수행하는 커널의 두 부분으로 구성된다. 노트북 형식의 프론트 엔드는 Mathematica 시스템의 GUI를 담당하는 부분이며 포맷된 텍스트 및 수학 타입셋, 그래픽, GUI 요소, 테이블, 음향 결과와 함께 프로그램 코드를 포함하는 노트북 문서의 생성 및 수정이 가능하다. 모든 내용 및 서식 설정은 알고리즘 또는 인터랙티브하게 편집 가능하며 일반적인 프로세싱 기능 대부분을 지원하고 있다. 프론트 엔드와 커널은 서로 독립적으로 시작하고 "MathLink"라는 프로토콜을 사용하여 통신하고 있다.
하나의 노트북에서 데이터의 처리부터 시각화, 문서 작성까지 원활하게 수행할 수 있는 것은 Mathematica의 가장 큰 장점 중 하나이다. 노트북에서는 사용자의 입력 (텍스트와 Wolfram 코드)과 커널 연산 결과 (그래픽과 사운드 포함)는 모두 계층화 된 '셀'에 포함되어 문서의 개요 및 섹션 분할을 용이하게 할 수 있다. 노트북의 내용은 모두 Wolfram 언어로 기술되어 있으며, 그 자체를 Wolfram 언어로 생성, 수정, 해석하는 것이 가능하다. 노트북에서 TeX 나 XML 등의 다른 포맷으로의 변환은 이 기능을 이용한 구문 분석을 통해 실현되고있다.
Mathematica 표준 노트북 이외에도 대체 프런트 엔드가 존재한다. 2006년에는 Eclipse 기반 통합 개발 환경의, Wolfram Workbench가 등장했다. Mathemarica의 프로젝트 기반 코드 개발 도구가되고 있으며, 버전 관리, 디버깅, 프로파일링, 테스팅[14] 등의 기능이있다. 또한 Mathematica 커널은 커멘드 라인 프론트 엔트 역시 포함하고있으며,[15] 다른 인터페이스로는 GNU readline, MASH[16] 기반의 JMath,[17]가 있으며 UNIX 명령 줄에서 직접 커널을 호출하여 상호작용할 수 있다.
계산 가능한 데이터
편집Mathematica는 일관된 프레임 워크에서 관리되는 데이터 집합이 포함되어 있으며, 즉시 계산에 사용할 수 있는 엄선된 데이터 컬랙션을 포함하고 있다. 또한 Mathematica는 지속적으로 데이터를 업데이트하는 온라인 서비스 Wolfram Alpha와 통합되어 있다. 수학 데이터,[18] 뿐만 아니라 천문학 데이터, 화학 데이터, 지정학적 데이터, 언어 데이터, 생명 과학 데이터, 금융 데이터, 기상 데이터 등 다수의 계산 가능한 데이터를 포함하고 있다.
라이선스 및 사용 가능한 플랫폼
편집Mathematica는 영리 목적, 교육용, 그리고 사용 용도[19]에 따른 각기 다른 컴퓨터 사유 소프트웨어이다. Mathematica 10은 마이크로소프트 윈도우 (Vist, 7,8, 10), Apple 사의 OS X, 리눅스, Raspbian, 그리고 온라인 서비스 등 다양한 버전을 지원한다.[20] 모든 플랫폼은 64 비트 구현을 지원한다.[21]
버전 기록
편집- Mathematica 1.0 (1988년 6월 23일)[22][23][24][25]
- Mathematica 1.1 (1988년 10월 31일)
- Mathematica 1.2 (1989년 8월 1일)[26][25]
- Mathematica 2.0 (1991년 1월 15일)[27][25]
- Mathematica 2.1 (1992년 6월 15일)[25][28]
- Mathematica 2.2 (1993년 6월 1일)[25][29]
- Mathematica 3.0 (1996년 9월 3일)[30]
- Mathematica 4.0 (1999년 5월 19일)[25]
- Mathematica 4.1 (2000년 11월 2일)[25]
- Mathematica 4.2 (2002년 11월 1일)[25]
- Mathematica 5.0 (2003년 6월 12일)[25][31]
- Mathematica 5.1 (2004년 10월 25일)[25][32]
- Mathematica 5.2 (2005년 6월 20일)[25][33]
- Mathematica 6.0 (2007년 5월 1일)[34][35]
- Mathematica 7.0 (2008년 11월 18일)[36]
- Mathematica 8.0 (2010년 11월 15일)
- Mathematica 9.0 (2012년 11월 28일)
- Mathematica 10.0 (2014년 7월 9일)
- Mathematica 10.0.1 (2014년 9월 17일)
- Mathematica 10.0.2 (2014년 12월 10일)
- Mathematica 10.1 (2015년 3월 30일)[37]
- Mathematica 10.2 (2015년 7월 14일)[38]
- Mathematica 10.3 (2015년 10월 15일)
- Mathematica 10.3.1 (2015년 12월 16일)
- Mathematica 10.4 (2016년 3월 2일)
- Mathematica 10.4.1 (2016년 4월 18일)
- Mathematica 11.0.0 (2016년 8월 8일)
- Mathematica 11.0.1 (2016년 9월 22일)
- Mathematica 11.1.0 (2017년 3월 16일)
- Mathematica 11.1.1 (2017년 4월 19일)
- Mathematica 11.2.0 (2017년 9월 14일)
- Mathematica 11.3.0 (2018년 3월 18일)
- Mathematica 12.0.0 (2019년 4월 16일)
- Mathematica 12.1.0 (2020년 3월 18일)
같이 보기
편집- 프로그래밍 언어의 비교
- 동적 프로그래밍 언어
- 4세대 프로그래밍 언어
- 함수형 프로그래밍
- 문학적 프로그래밍
- 수학 소프트웨어
- 울프럼 알파
- 울프럼 언어
- SageMath
- 다중 페러다임 프로그래밍 언어
유사한 프로그램
편집각주
편집- ↑ Wolfram, Stephen (2008년 6월 23일), 《Mathematica Turns 20 Today》, Wolfram, 2012년 5월 16일에 확인함
- ↑ “Mathematica Quick Revision History”. 2023년 4월 3일에 확인함.
- ↑ “Celebrating Mathematica’s First Quarter Century”. 2015년 8월 11일에 확인함.
- ↑ The Software Engineering of Mathematica—Wolfram Mathematica 9 Documentation. Reference.wolfram.com. Retrieved on 2015-03-23.
- ↑ Wolfram, Stephen (2011년 10월 6일), 《STEVE JOBS: A FEW MEMORIES》, Wolfram Alpha, 2012년 5월 16일에 확인함
- ↑ Weisstein, Eric W., 〈Spikey〉, 《SPIKEY》, Wolfram MathWorld
- ↑ Trott, Michael (2007년 5월 22일), 〈Making the Mathematica 6 Spikey〉, 《Wolfram Blog》, Wolfram Blog
- ↑ 〈Mathematica 가이드〉, 《Alphabetical Listing》, Wolfram Research, Inc.
- ↑ “Wolfram Language & System Documentation Center”. 2015년 8월 11일에 확인함.
- ↑ /mathematica_7.html Review: Mathematica 7. Technical computing powerhouse gets more oomph[깨진 링크(과거 내용 찾기)] Macworld, Jan 2009
- ↑ Mathematica 6 Labs Review Archived 2022년 3월 25일 - 웨이백 머신 Cadalyst Feb 1, 2008
- ↑ “The Free-Form Linguistics Revolution in Mathematica”. 2015년 8월 11일에 확인함.
- ↑ “Free-Form Linguistic Input”. 2015년 8월 11일에 확인함.
- ↑ “Wolfram intros Workbench IDE for Mathematica”. 《Macworld》. 2006년 6월 21일. 2006년 7월 2일에 원본 문서에서 보존된 문서. 2015년 8월 11일에 확인함.
- ↑ Using a Text-Based Interface documentation at wolfram.com
- ↑ “Directory listing:”. 2015년 8월 11일에 확인함.
- ↑ “JMath: A GNU Readline based frontend for Mathematica”. 2015년 8월 11일에 확인함.
- ↑ 〈Scientific and Technical Data〉, 《Mathematic Guide》, Wolfram Research, 2012년 5월 10일에 원본 문서에서 보존된 문서, 2012년 5월 16일에 확인함
- ↑ “Wolfram Mathematica License Agreement” (PDF). 2015년 8월 11일에 확인함.
- ↑ Raspberry Pi Includes Mathematica for Free The Verge
- ↑ “Wolfram Mathematica”. 2015년 8월 11일에 확인함.
- ↑ 《Mathematica: The Scrapbook》, Wolfram, 2012년 5월 18일에 원본 문서에서 보존된 문서, 2012년 5월 16일에 확인함
- ↑ “The Mathematica Journal: Volume 9, Issue 1: News Bulletins”. 2016년 3월 3일에 원본 문서에서 보존된 문서. 2015년 8월 11일에 확인함.
- ↑ Supercomputer Pictures Solve the Once Insoluble, John Markoff, October 30, 1988.
- ↑ 가 나 다 라 마 바 사 아 자 차 카 Nasser M. Abbasi. “A little bit of Mathematica history”.
- ↑ Mathematica 1.2 adds new graphics options: upgrade also promises concurrent operations by Elinor Craig, MacWeek, July 25, 1989.
- ↑ Mathematica + 283 functions = Mathematica 2.0 by Raines Cohen, MacWeek, January 15, 1991.
- ↑ New Mathematica: faster, leaner, linkable and QuickTime-compatible: MathLink kit allows ties to other apps. (Wolfram Research Inc. ships Mathematica 2.1, new QuickTime-compatible version of Mathematica software) by Daniel Todd, MacWeek, June 15, 1992.
- ↑ New version of Mathematica Archived 2012년 10월 23일 - 웨이백 머신, Mechanical Engineering, June 1, 1993.
- ↑ “Wolfram News Archive”. Wolfram.com. 2013년 3월 2일에 원본 문서에서 보존된 문서. 2013년 8월 16일에 확인함.
- ↑ Mathematica 5.0 Adds Up: Exactly 15 years after Mathematica's initial release, Wolfram Research has released Mathematica Archived 2019년 8월 5일 - 웨이백 머신, PC Magazine, September 3, 2003.
- ↑ Mathematica 5.1's Web Services Add Up; Mathematica 5.1 delivers improvements over Version 5.0 that are vastly out of proportion for a .1 upgrade. Archived 2012년 12월 9일 - 웨이백 머신 by Peter Coffee, eWeek, December 6, 2004.
- ↑ Mathematica hits 64-bit Archived 2011년 6월 10일 - 웨이백 머신, MacWorld UK, July 13, 2005.
- ↑ Today, Mathematica is reinvented - Blog by Stephen Wolfram
- ↑ Mathematica 6: Felix Grant finds that version 6 of Wolfram Research's symbolic mathematical software really does live up to its expectations. Archived 2011년 1월 13일 - 웨이백 머신 Scientific Computing, 2007.
- ↑ Mathematica 7.0 Released Today! - Blog by Stephen Wolfram
- ↑ “Wolfram Research News » Mathematica 10.1 is Now Available!”. 2015년 8월 22일에 원본 문서에서 보존된 문서. 2015년 8월 11일에 확인함.
- ↑ “Mathematica Latest Version and Quick Revision History”. 2015년 8월 11일에 확인함.
외부 링크
편집- 매스매티카 - 공식 웹사이트
- Mathematica 문서 센터
- 이미지 식별 Mathematica 기반 웹사이트
- Wolfram Demonstrations Project Mathematica 기반 데모
- Mathematica 역사의 단면 코드 베이스 및 함수 관련 문서