วุลฟรัม
![]() | |
![]() | |
นักพัฒนา | Wolfram Research |
---|---|
วันที่เปิดตัว | ค.ศ. 1988[1] |
รุ่นเสถียร | 14.1
/ 31 กรกฎาคม 2024[2] |
ระบบปฏิบัติการ | Windows, macOS, Linux, การใช้งาน 64-bit |
ภาษา | อังกฤษ, เยอรมัน, ญี่ปุ่น |
ประเภท | ระบบพีชคณิตทางคอมพิวเตอร์, การแสดงข้อมูล, ซอฟต์แวร์สถิติ, อินเทอร์เฟซผู้ใช้แบบกราฟิก |
สัญญาอนุญาต | ลิขสิทธิ์ |
เว็บไซต์ | wolfram.com/products/mathematica |
วุลฟรัม (ในอดีตชื่อ วุลฟรัม แมเทอแมทิกา หรือ แมเทอแมทิกา) เป็นชุดโปรแกรมทางคณิตศาสตร์และวิทยาศาสตร์ที่สามารถทำการคำนวนได้ในหลากหลายขแนง และเป็นซอฟต์แวร์ลิขสิทธิ์ของบริษัท Wolfram Research ชุดโปรแกรมเวอร์ชัน 1.0 ได้วางจำหน่ายเมื่อ ค.ศ. 1988
ชุดโปรแกรม วุลฟรัม
[แก้]ชุดซอฟต์แวร์ วุลฟรัม ประกอบด้วย
- ระบบพีชคณิตทางคอมพิวเตอร์ (Computer algebra system) สำหรับการประมวลผลเชิงสัญลักษณ์ของสมการทั้งในแบบทั่วไปและแบบ อนุพันธ์[3][4]
- ซอฟต์แวร์ทางตัวเลข สำหรับการแก้หรือประเมินค่าเชิงตัวเลขของสมการ
- เครื่องมือการแสดงภาพ สำหรับการสร้างกราฟทั้งในรูปแบบสองมิติและสามมิติ
- ภาษาการเขียนโปรแกรม ที่รวมเอาองค์ประกอบของการเขียนโปรแกรมแบบเชิงกระบวนการ (procedural), วัตถุ (object-oriented), ฟังก์ชัน (functional) และตามกฎ (rule-based) เข้าไว้ด้วยกัน
ผู้เขียนและผู้ก่อตั้งบริษัท Stephen Wolfram เริ่มต้นการพัฒนาเมื่อ ค.ศ. 1986 วุลฟรัม รุ่นแรกได้ถูกเผยแพร่เมื่อ ค.ศ. 1988 โดย Stephen Wolfram กล่าวว่าชื่อดั้งเดิมของ วุลฟรัม (วุลฟรัม แมเทอแมทิกา) ได้รับการเสนอจาก Steve Jobs[5][6]
วุลฟรัม (วุลฟรัม แมเทอแมทิกา) 1.0 มีฟังก์ชันในตัวมากกว่า 500 ฟังก์ชัน ซึ่งยังคงมีอยู่ใน วุลฟรัม เวอร์ชัน 13.0 ใน วุลฟรัม เวอร์ชัน 4.0 ที่เผยแพร่เมื่อ ค.ศ. 2000 มีฟังก์ชันมากกว่า 1000 ฟังก์ชัน ฟังก์ชันเหล่านี้ถูกบันทึกในคู่มือพิมพ์ที่มีน้ำหนักกว่า 3 กิโลกรัม และจำนวนหน้ามากกว่า 1500 หน้า[7]
ในเวอร์ชัน 13.3 ที่เผยแพร่เมื่อ ค.ศ. 2023 มีฟังก์ชันมากกว่า 6000 ฟังก์ชัน ซึ่งไม่ได้มีการจัดทำเป็นคู่มือพิมพ์อีกต่อไป[8] นอกจากนี้ยังมีแนวคิดใหม่จำนวนมากที่ขยายขอบเขตการใช้งานของระบบ
เวอร์ชัน 14.1 ของวุลแฟรมได้ทำการเปลี่ยนชื่อจาก วุลฟรัม แมเทอแมทิกา มาเป็น วุลแฟรม ซึ่งรวบรวม วุลฟรัม แมเทอแมทิกา Wolfram|One and Finance Platfrom [9] และ Wolfram|Alpha Notebook Edition [10] ไว้ด้วยกัน [11] เวอร์ชัน 14.1 นี้ได้รับการเผยแพร่ในปี ค.ศ. 2024
การใช้งานและวิธีการทำงาน
[แก้]วุลฟรัม ประกอบด้วย Kernel ที่ใช้ทำการคำนวณ และ Notebook ซึ่งเป็น ตัวเชื่อมประสานกับผู้ใช้แบบกราฟิก โปรแกรมจะถูกใช้งานผ่าน Notebook ซึ่งจัดรูปแบบการนำเข้าและส่งออก Notebook ยังมีฟังก์ชันของ การประมวลผลคำ ที่สามารถใช้ในการแสดงและจัดการกราฟิก อีกหนึ่งคุณสมบัติพิเศษของ วุลฟรัม คือการสนับสนุนสัญลักษณ์ทางคณิตศาสตร์ที่หลากหลาย ซึ่งใน วุลฟรัม (แตกต่างจากภาษาการเขียนโปรแกรมคลาสสิก) สามารถใช้เครื่องหมายเหล่านี้รวมถึงชื่อตัวแปรได้ในทุกที่ของโปรแกรม
Kernel จะประมวลผล โค้ดโปรแกรม ทันทีหลังจากการป้อนข้อมูล (ในฐานะ Interpreter), ทำให้การเขียนโปรแกรมเป็นแบบโต้ตอบ ดังนั้นผลลัพธ์หรือข้อผิดพลาดในการเขียนโปรแกรมจึงสามารถเห็นได้ทันที หากมีการเรียกใช้โปรแกรมซ้ำหลายครั้ง เช่น ในการเรียกใช้โปรแกรมที่ไม่โต้ตอบ โปรแกรมจะถูก คอมไพล์ โดยอัตโนมัติ โค้ดโปรแกรมนั้นเป็นอิสระจากระบบปฏิบัติการ วุลฟรัม มีให้บริการสำหรับ Windows, Linux และ macOS, จนถึงเวอร์ชัน 6.0.3 ยังมีให้สำหรับ MS-DOS, NeXT, OS/2, Unix และ VMS
ตั้งแต่เวอร์ชัน 8 ฟีเจอร์ที่เรียกว่า free form input ถูกใส่เข้าไปใน วุลฟรัม ซึ่งช่วยให้ผู้ใช้สามารถใช้ภาษาอังกฤษ "ธรรมชาติ" แทนการป้อนไวยากรณ์ที่ถูกต้องสำหรับการคำนวณและคำสั่งอื่น ด้วยเหตุผลนี้จึงมีความจำเป็นต้องเชื่อมต่ออินเทอร์เน็ตตลอดการใช้งาน ตัวอย่างการใช้ภาษา กราฟของฟังก์ชันไซนัสที่มีการเติมสีแดงอ่อนและเส้นตารางเป็นจุด จะถูกสร้างขึ้นเมื่อป้อนคำสั่ง
Plot[Sin[x], {x, -6.6, 6.6}, Filling -> Axis, FillingStyle -> Lighter[Red], GridLines -> Automatic, GridLinesStyle -> Dashed ]
หรือโดยใช้ free form input
plot sin x with light red filling and dashed grid lines
หลังจากที่ป้อนคำสั่งที่ใช้ free form input แล้ว สามารถแปลเป็นไวยากรณ์ (syntax) และแก้ไขใหม่ได้ เพื่อให้ยังคงมีความได้เปรียบจากไวยกรณ์แบบทั่วไป[12] [13]
วุลฟรัม มักถูกใช้ในทางวิทยาศาสตร์หรือเศรษฐศาสตร์ และยังมีการใช้งานในอุตสาหกรรมและธุรกิจ ดังนั้นธนาคารจึงใช้ วุลฟรัม ในการจำลองการพัฒนาราคาหุ้น, การประเมิน อนุพันธ์ทางเศรษฐศาสต์, การประเมินความเสี่ยง และอื่นๆ ความแม่นยำของผลลัพธ์ (ทั้งเชิงวิเคราะห์และเชิงตัวเลข) จึงมีความจำเป็นมาก
นอกจาก เรขาคณิตพื้นฐาน, การอนุพันธ์, การคำนวณเชิงปริพันธ์, การแก้ สมการ, การจัดการแมทริกซ์ และ การคำนวณเชิงตัวเลข (ไม่มีข้อจำกัดในด้านความแม่นยำของเครื่องจักร) ยังมีฟังก์ชันพิเศษมากมาย เช่น จากสาขาของ เชิงผสม (combinatoric), ที่ได้ถูกนำมารวมไว้ ภาษาโปรแกรมของ วุลฟรัม มีการกำหนดประเภท (Type assignment) โดยอัตโนมัติ, การจัดการหน่วยความจำโดยอัตโนมัติ และเทคนิคการประเมินแบบรูปแบบ (pattern matching) ตั้งแต่ปลาย ค.ศ. 2013 ภาษาโปรแกรม Wolfram Language ได้ถูกจำแนกแยกจาก วุลฟรัม[14]
หนึ่งในทางเลือกสำหรับหน้าต่าง (front end) ใน วุลฟรัมคือ Wolfram Workbench—สภาพแวดล้อมการพัฒนาแบบ (IDE) ที่ใช้รากฐานจาก Eclipse ซึ่งถูกนำเสนอเมื่อ ค.ศ. 2006 Wolfram Workbench ให้เครื่องมือการพัฒนารหัสที่มีพื้นฐานจากวุลฟรัมรวมถึงการจัดการการแก้ไขโค้ด, การดีบัก, การวิเคราะห์ และการทดสอบ และยังมีปลั๊กอินสำหรับ IntelliJ-IDEA-based IDEs สำหรับการทำงานกับโค้ด Wolfram Language ซึ่งนอกเหนือจากการเน้นไวยากรณ์แล้ว ยังสามารถแยกวิเคราะห์, เติมตัวแปรท้องถิ่น (local variable) และฟังก์ชันที่กำหนดได้โดยอัตโนมัติ Kernal ของวุลฟรัมยังมีส่วนติดต่อคำสั่งแบบ command line อีกด้วย
ภาษา
[แก้]ภาษาในโปรแกรม วุลฟรัม (Wolfram Language)[15] มีพื้นฐานมาจากภาษา Lisp ซึ่งเป็นภาษาโปรแกรมเชิงฟังก์ชัน นอกจากนี้วุลฟรัมยังอิงตามการจับคู่รูปแบบ (Pattern matching) เป็นหลัก (คล้ายเคลียงกับภาษา Haskell) สิ่งนี้ทำให้เกิดความสับสน อย่างยิ่งสำหรับผู้เริ่มต้น เนื่องจากรูปแบบ เช่น ตัวยึดรูปแบบ จะปรากฏขึ้นทันทีที่มีการทำงานกับฟังก์ชันต่าง ๆ วงเล็บเหลี่ยมที่ใช้เกือบตลอดเวลา ทำให้เกิดลักษณะโค้ดที่แตกต่างจากภาษาโปรแกรมทั่วไปเช่น C อย่างมาก สำหรับวุลฟรัมคำจำกัดความต่อไปนี้ไม่ใช่ฟังก์ชัน แต่เป็นกฎการแทนที่, สิ่งที่จะเกิดขึ้นกับตัวแปร "something" ใน f[something]
หลังจากการประเมิณผลของ something + something
คือการแทนที่ตัวแปร "something" ด้วย "something + something" หลังจากนี้, ซึ่งในที่นี้ something
จะเป็นอะไรก็ได้:
f[x_] = x + x
อย่างไรก็ตามฟังก์ชันในแง่ของการเขียนโปรแกรมในรูปแบบของ แลมบ์ดา-แคลคูลัส ถูกสร้างขึ้นด้วยรูปแบบ Function
:
f = Function[x, x + x]
ข้อดีของการจับคู่รูปแบบในพีชคณิตคอมพิวเตอร์คือกฎการแทนที่ที่ซับซ้อนสามารถเขียนให้กะทัดรัดได้ ฟังก์ชันที่กำหนดไว้ในส่วนต่าง ๆ สามารถกำหนดได้โดยใช้กฎการจับคู่ดังนี้:
g[x_ /; x < 7] = 2*x; g[x_ /; x > 7] = 3*x;
ในตัวอย่างนี้ g[3]
จะถูกประมวลผลด้วย 2*3=6
, แต่ g[10]
จะถูกประมวลผลด้วย 3*10=30

Plus[a,Sin[Times[b,c]
ในรูปแบบ ต้นไม้เช่นเดียวกับ Lisp วุลฟรัม จัดแสดงคุณสมบัติของความเป็น เนื้อเดียวกัน (Homoiconicity) ซึ่งหมายความว่าโค้ดวุลฟรัมและผลลัพธ์ของการคำนวณเป็นข้อมูลประเภทเดียวกัน จริง ๆ แล้วคำสั่งวุลฟรัมเช่น ผลลัพธ์นั้นเป็นแผนผังต้นไม้และการประเมินข้อมูลคือการแปลงต้นไม้ดังกล่าว ด้วยเหตุนี้ องค์ประกอบแรกของนิพจน์ วุลฟรัมจึงถูกเรียกว่า หัว (head) ในตัวอย่างต่อไปนี้ head คือคำสั่ง plus:
Plus[a,Sin[Times[b,c]]]
เมื่อแสดงเป็นต้นไม้ ผลลัพธ์จะมีลักษณะดังที่แสดงทางด้านขวา ส่วนหัว ของทรีคือฟังก์ชัน Plus
วุลฟรัมรู้วิธีต่าง ๆ ในการแสดงอินพุต/เอาท์พุต การเขียนแบบธรรมชาตินี้สอดคล้องผลลัพธ์ที่อ่านง่ายกว่าคือ
a + Sin[b*c]
วุลฟรัม รองรับการประมวลผลพีชคณิตของคอมพิวเตอร์ซึ่งประมวลผล สัญลักษณ์ที่กำหนดเองในผลลัพธ์ดังกล่าว การใช้รายการกฎการแทนที่ นิพจน์เหล่านี้จะถูกแปลงเป็นแผนภูมิต้นไม้ในรูปแบบอื่น เมื่อประกอบในลักษณะนี้ ทำให้การคำนวณที่ซับซ้อนเป็นไปได้ ดังนั้น วุลฟรัม จึงเป็น การพิมพ์แบบไดนามิก ตรงกันข้ามกับภาษาอื่น ๆ ในวุลฟรัมบรรทัดที่ไม่สามารถประเมินได้โดยทั่วไปไม่ใช่ข้อผิดพลาด แต่ยังคงอยู่เป็นการคืนค่า (return) อย่างไรก็ตาม เอาต์พุตข้อผิดพลาดยังคงเป็นไปได้ เช่น เมื่อส่งอาร์กิวเมนต์ที่ไม่เหมาะสมไปยังฟังก์ชัน (built-in) เช่น Plot
โปรแกรมเมอร์ไม่ได้จำกัดอยู่เพียงแค่ กระบวนทัศน์การเขียนโปรแกรม (Programming paradigm) แต่ยังสามารถโปรแกรมคำสั่งที่จำเป็นได้ ด้วยฟังก์ชันภายในนับหมื่นรายการ โปรแกรมจึงถูกเขียนได้หลากหลายและรวดเร็ว
ตัวอย่างการใช้ภาษา
[แก้]ตัวอย่างที่ 1: จำนวนเฉพาะ
[แก้]ด้วยฟังก์ชัน Prime[k]
จำนวนเฉพาะลำดับที่ k
จะถูกคำนวนและแสดงผล ยกตัวอย่างเช่น
- In[1]:=
Prime[15]
- Out[1]=
47
สังเกตุว่า คำนำหน้าที่เขียนโดยวุลฟรัมจะเป็นแบบอักษรขนาดเล็กและเป็นสีน้ำเงิน (กล่าวคือ ไม่ใช่ลิงก์)
รายการหมายเลขเฉพาะสามารถสร้างได้หลายวิธี เช่น รายการหมายเลขเฉพาะ 15 หลักแรกสามารถสร้างขึ้นด้วยวิธีดังนี้
แบบที่ 1: การใช้ฟังก์ชัน Table
- In[1]:=
Table[Prime[i],{i,15}]
- Out[1]=
{2,3,5,7,11,13,17,19,23,29,31,37,41,43,47}
แบบที่ 2: การใช้ฟังก์ชัน Range
- In[1]:=
Prime /@ Range[15]
- Out[1]=
{2,3,5,7,11,13,17,19,23,29,31,37,41,43,47}
แบบที่ 3: เก็บจำนวนเฉพาะในช่องข้อมูล
- In[1]:=
f[n_]:=Table[Prime[i],{i,n}]
- In[2]:=
f[15]
- Out[2]=
{2,3,5,7,11,13,17,19,23,29,31,37,41,43,47}
แบบที่ 4: เลือกรายการจำนวนเฉพาะในบล็อกโดยใช้ระดับจำนวนเฉพาะ
- In[1]:=
tm = 2; p = {}; k = 1; Do[
Do[If[t > 0, For[i = 1, (s = p[[i]]) <= t + 1, i++, If[GCD[k - s, 2 s - 1] != 1, Goto[l]]]]; p = AppendTo[p, k]; Label[l]; k++, {4 (t + 1)}], {t, 0, tm}]; p *= 2; p--; p[[1]]++; p
- Out[1]=
{2,3,5,7,11,13,17,19,23,29,31,37,41,43,47}
ตัวอย่างที่ 4 ลำเลียงวุลฟรัมให้เป็นภาษาโปรแกรม
มีฟังก์ชันจำนวนเฉพาะอื่น ๆ อีก เช่นฟังก์ชัน PrimePi[x]
จะส่งคืนจำนวนเฉพาะที่น้อยกว่าหรือเท่ากับ x
- In[1]:=
PrimePi[50]
- Out[1}=
15
คุณสามารถสอบถามได้ว่าจำนวนเต็ม n เป็นจำนวนเฉพาะหรือไม่โดยใช้ฟังก์ชัน PrimeQ[n]
ตัวอย่างเช่น ค.ศ. 2017 เป็นจำนวนเฉพาะใช่หรือไม่
- n[1]:=
PrimeQ[2017]
- Out[1]=
True
2023 เป็นจำนวนเฉพาะใช่หรือไม่
- In[1]:=
PrimeQ[2023]
- Out[1]=
False
2023 มีตัวประกอบอะไรบ้าง
- In[1]:=
Divisors[2023]
- Out[1]=
{1,7,17,119,289,2023}
ตัวอย่างที่ 2: การคำนวณค่าเฉลี่ย
[แก้]ด้านล่างนี้เป็นสามวิธีในการคำนวณค่าเฉลี่ยของรายการค่าโดยใช้วุลฟรัมซึ่งในโหมดโต้ตอบจะกำหนดตัวเลขอินพุตและเอาต์พุตและส่งมอบผลลัพธ์โดยตรง
กำหนดรายการค่า:
- In[1]:=
myData = Range[8]
- Out[1]=
{1, 2, 3, 4, 5, 6, 7, 8}
ใช้ฟังก์ชันของวุลฟรัม:
- In[2]:=
Mean[myData]
- Out[2]=
9/2
ใช้การจัดการรายการ:
- In[3]:=
Plus@@myData / Length[myData]
- Out[3]=
9/2
ขั้นตอนการดำเนินการ:
- In[4]:=
summe = 0
- Out[4]=
0
- In[5]:=
For[ j=1,j <= Length[myData], j++, summe += myData[[j]] ]
- In[6]:=
summe / Length[myData]
- Out[6]=
9/2
ตัวอย่างที่ 3: เมทริกซ์
[แก้]วุลฟรัม มีฟังก์ชันต่าง ๆ มากมายสำหรับสร้างและจัดการเมทริกซ์ทั้งในแบบ Hilbert เมทริกซ์ หรือ Hankel เมทริกซ์ องค์ประกอบเมทริกซ์สามารถเป็นได้ทั้งตัวเลขและสัญลักษณ์ ในตัวอย่างด้านล่างได้มีการลองใช้สัญลักษณ์และตั้งชื่อเมทริกซ์ว่า FeldX
องค์ประกอบเมทริกซ์จะถูกป้อนทีละบรรทัดในรูปแบบพิเศษด้วยฟังก์ชัน MatrixForm
เมทริกซ์จะแสดงในรูปแบบปกติ:
- In[1]:=
MatrixForm [FeldX={{a, b, 0}, {c, a, b}, {0, c, a}}]
- Out[1]//MatrixForm=

เมทริกซ์นี้เป็นเมทริกซ์ Toeplitz สามเหลี่ยมมุมฉาก สำหรับการ จัดการเมทริกซ์ จุดแบบธรรมดา (.) จะถูกวางไว้ระหว่างชื่อฟิลด์ [16] กับตัวมันเองจะมีลักษณะไวยกรณ์เช่นนี้:
- In[2]:=
MatrixForm [FeldX.FeldX]
- Out[2]//MatrixForm=
ทรานสโพส ของเมทริกซ์ FeldX
ถูกสร้างขึ้นด้วยวิธีนี้:
- In[3]:=
MatrixForm [Transpose[FeldX]]
- Out[3]//MatrixForm=
ดีเทอร์มิแนนต์ ของเมทริกซ์ FeldX
คำนวณโดยใช้ฟังก์ชันDet[FeldX]
:
- In[4]:=
Det[FeldX]
- Out[4]=
a³-2abc
ส่วนผกผันของเมทริกซ์ FeldX
จะได้มาด้วยฟังก์ชัน Inverse[FeldX]
:
- In[5]:=
MatrixForm [Inverse[FeldX]]
- Out[5]//MatrixForm=
ค่าลักษณะเฉพาะ (eigen value) จะมาพร้อมกับฟังก์ชัน Eigenvalues[FeldX]
:
- In[6]:=
Eigenvalues[FeldX]
- Out[6]=
{a, a – , }
ถ้า a, b และ c เป็นจำนวนจริง และสัญลักษณ์ของ a และ b ต่างกัน, ค่าลักษณะเฉพาะทั้งสองจะเป็นจำนวนจินตภาพ และทั้งสองค่าจะเป็น สังยุคของจำนวนเชิงซ้อนของกันและกัน ในทำนองเดียวกัน สามารถคำนวณเวกเตอร์ลักษณะเฉพาะได้โดยใช้ฟังก์ชัน Eigenvectors[FeldX]
ตัวอย่างที่ 4: การวาดรูปแบบพลาโทนิก
[แก้]
รูปแบบพลาโทนิก เป็น ทรงหลายหน้า ซึ่งล้อมรอบด้วยรูปทรงหลายหน้าปรกติ มีการจำแนกยู่ห้ารูปแบบ (จัตุรมุข, ลูกบาศก์, ทรงแปดหน้า, สิบสองหน้า, ไอโคซาฮีดรอน) ในการวาดสิ่งเหล่านี้วุลฟรัมจะรวมฟังก์ชันไว้ด้วย Polyhedron[18]ซึ่งต้องระบุชื่อภาษาอังกฤษของรูปทรงหลายเหลี่ยมเป็นอาร์กิวเมนต์ มีฟังก์ชันอื่น ๆ ที่เกี่ยวข้อง เช่น ฟังก์ชัน Truncate ซึ่งสร้างรูปทรงหลายเหลี่ยมที่ถูกตัดทอน (จัตุรมุขที่ถูกตัดทอน, hexahedron ที่ถูกตัดทอน, ทรงแปดหน้าที่ถูกตัดทอน, สิบสองหน้าที่ถูกตัดทอน, icosahedron ที่ถูกตัดทอน), ซึ่งถูกสร้างขึ้นโดยการตัดมุม
ก่อนที่จะเข้าสู่ฟังก์ชันแรก จะต้องโหลดแพ็คเกจ Polyhedra ก่อน
- In[1]:=
<< Graphics`Polyhedra`
- In[2]:=
Show[Polyhedron[Tetrahedron]]
จากนั้นสามารถวาดรูปทรงหลายเหลี่ยมปกติอื่น ๆ และสัดส่วนของพวกมันได้ทีละอันตามที่แสดงในภาพ
Show[Polyhedron[Cube]] Show[Polyhedron[Octahedron]] Show[Polyhedron[Dodecahedron]] Show[Polyhedron[Icosahedron]] Show[Truncate[Polyhedron[Tetrahedron]]] Show[Truncate[Polyhedron[Cube]]] Show[Truncate[Polyhedron[Octahedron]]] Show[Truncate[Polyhedron[Dodecahedron]]] Show[Truncate[Polyhedron[Icosahedron]]]
ในกรณีนี้ การใช้วุลฟรัมเป็นเรื่องง่ายมาก สำหรับตัวอย่างนี้ใช้ วุลฟรัม แมเทอแมทิกา เวอร์ชัน 3.0 (1996) ในเวอร์ชัน 12.0 (2019) ไวยากรณ์ของฟังก์ชันรูปทรงหลายเหลี่ยมมีการเปลี่ยนแปลง[19]
ประวัติเวอร์ชันและวันที่เผยแพร่
[แก้]การพัฒนา วุลฟรัม จากรุ่นสู่รุ่นเป็นแบบไดนามิกมากจนดูเหมือนเป็นไปไม่ได้ที่จะรวบรวมนวัตกรรม แม้แต่สิ่งที่สำคัญที่สุดในตาราง คุณสามารถดูภาพรวมได้จากเว็บไซต์ประวัติของ เวอร์ชัน วุลฟรัม อย่างสั้น[20]
รุ่น | วันที่เผยแพร่ |
---|---|
1.0 | 23 มิถุนายน 1988 |
1.1 | 31 ตุลาคม 1988 |
1.2 | 1 สิงหาคม 1989 |
2.0 | 15 มกราคม 1991 |
2.1 | 15 มิถุนายน 1992 |
2.2 | 1 มิถุนายน 1993 |
3.0 | 3 กันยายน 1996 |
4.0 | 19 พฤษภาคม 1999 |
4.1 | 2 พฤศจิกายน 2000 |
4.2 | 1 พฤศจิกายน 2002 |
5.0 | 12 มิถุนายน 2003 |
5.1 | 25 ตุลาคม 2004 |
5.2 | 20 มิถุนายน 2005 |
6.0 | 1 พฤษภาคม 2007 |
7.0 | 18 พฤศจิกายน 2008 |
7.0.1 | 5 มีนาคม 2009 |
8.0 | 15 พฤศจิกายน 2010 |
8.0.1 | 7 มีนาคม 2011 |
8.0.4 | 24 ตุลาคม 2011 |
9.0 | 28 พฤศจิกายน 2012 |
9.0.1 | 30 มกราคม 2013 |
10 | 9 กรกฎาคม 2014 |
10.0.1 | 17 กันยายน 2014 |
10.0.2 | 15 ธันวาคม 2014 |
10.1 | 31 มีนาคม 2015 |
10.2 | 14 กรกฎาคม 2015 |
10.3 | 15 ตุลาคม 2015 |
10.3.1 | 16 ธันวาคม 2015 |
10.4 | 2 มีนาคม 2016 |
10.4.1 | 18 เมษายน 2016 |
11 | 9 สิงหาคม 2016 |
11.0.1 | 28 กันยายน 2016 |
11.1 | 16 มีนาคม 2017 |
11.1.1 | 25 เมษายน 2017 |
11.2 | 14 กันยายน 2017 |
11.3 | 8 มีนาคม 2018 |
12.0 | 16 เมษายน 2019 |
12.1 | 18 มีนาคม 2020 |
12.2 | 16 ธันวาคม 2020 |
12.3 | 20 พฤษภาคม 2021 |
12.3.1 | กรกฎาคม 2021 |
13.0 | 13 ธันวาคม 2021 |
13.1 | 29 มิถุนายน 2022 |
13.2 | 14 ธันวาคม 2022 |
13.2.1 | กุมภาพันธ์ 2023 |
13.3 | 12 มิถุนายน 2023 |
14.0 | 9 มกราคม 2024 |
14.1 | 31 กรกฎาคม 2024 |
การเชื่อมต่อกับระบบและภาษาอื่น ๆ
[แก้]การสื่อสารกับแอปพลิเคชันและบริการอื่นสามารถเกิดขึ้นได้โดยใช้โปรโตคอลที่เรียกว่า Wolfram Symbolic Transfer Protocol (WSTP)[21] WSTP ช่วยให้สามารถสื่อสารระหว่างเคอร์เนลวุลฟรัมและฟรอนต์เอนด์ และจัดให้มีอินเทอร์เฟซทั่วไประหว่างเคอร์เนลและแอปพลิเคชันอื่น ๆ ซึ่งสามารถตั้งโปรแกรมเป็นภาษาอื่นได้ วุลฟรัม มีอินเทอร์เฟซสำหรับ Haskell,[22] แอปเปิ้ลสคริปต์,[23]แร็กเกต, วิชวลเบสิก,[24] ไพทอน[25] และ โคลจูเร่ (Clojure)[26]
ปัญหา
[แก้]เมื่อ ค.ศ. 2014 นักคณิตศาสตร์สามคนตีพิมพ์ว่าวุลฟรัมให้ผลลัพธ์ที่ไม่ถูกต้องเมื่อคำนวณดีเทอร์มิแนนต์ของเมทริกซ์บางตัวที่มีจำนวนเต็มค่อนข้างมาก (10,000 หลัก) ข้อผิดพลาดนี้ได้รับการรายงานเมื่อ ค.ศ. 2013 และไม่ได้รับการแก้ไขหลังจากผ่านไปนานกว่าหนึ่งปี อย่างไรก็ตาม การนำเสนอของ Wolfram Research บางส่วนขัดแย้งกับข้อมูลนี้และทำให้เกิดข้อผิดพลาดใหม่[27] ข้อผิดพลาดในการคำนวณ (CASE:303438) ได้รับการแก้ไขแล้วตั้งแต่เวอร์ชัน 11.1 และไม่มีอีกต่อไปในเวอร์ชั่นปัจจุบัน
ดูเพิ่มเติม
[แก้]- วุลแฟรม อัลฟ่า
- รายชื่อซอฟต์แวร์ทางสถิติ
- การคำนวนทางวิทยาศาสตร์
- Sage (Software), ทางเลือกโอเพ่นซอร์ส
หนังสือและบทความ
[แก้]- Hans Benker: MATHEMATICA kompakt: Mathematische Problemlösungen für Ingenieure, Mathematiker und Naturwissenschaftler. Springer, Berlin / Heidelberg 2016, ISBN 978-3-662-49610-7.
- Stephen Wolfram: An Elementary Introduction to the Wolfram Language. Wolfram Media, Champaign IL 2015, ISBN 978-1-944183-00-4.
- Knut Lorenzen: Einführung in Mathematica: Berücksichtigt die kostenlose Version 10 für den Raspberry Pi. mitp Verlag, 2014, ISBN 978-3-8266-9666-4.
- Axel Kilian: Programmieren mit Wolfram Mathematica. Springer, Berlin / Heidelberg 2009, ISBN 978-3-642-04671-1.
- Michael Trott: The Mathematica GuideBook for Symbolics. Springer, 2006.
- Michael Trott: The Mathematica GuideBook for Programming. Springer, 2004.
- Michael Trott: The Mathematica GuideBook for Numerics. Springer, 2006.
- Michael Trott: The Mathematica GuideBook for Graphics. Springer, 2004.
- Stephen Wolfram (2004). The Mathematica Book (5th ed.). Wolfram Media. ISBN 1-57955-022-3.
- Leonid Shifrin. Mathematica Programming.
- David B. Wagner (1996). Power Programming With Mathematica: The Kernel (PDF). McGraw-Hill Education. ISBN 0-07-912237-X.
อ้างอิง
[แก้]- ↑ Wolfram, Stephen (2008-06-23), Mathematica Turns 20 Today, Wolfram, สืบค้นเมื่อ 2012-05-16
- ↑ Stephen Wolfram (2024-07-31). "Yet More New Ideas and New Functions: Launching Version 14.1 of Wolfram Language & Mathematica" (ภาษาอังกฤษ). สืบค้นเมื่อ 2024-08-09.
- ↑ Barak Katz (2008). "Introduction to Mathematica" (PDF (1.6 MB)) (ภาษาอังกฤษ). สืบค้นเมื่อ 2020-03-27.
- ↑ Paritosh Mokhasi. "Solving Differential Equations in Mathematica". Wolfram: Computation Meets Knowledge (ภาษาอังกฤษ). สืบค้นเมื่อ 2020-03-27.
- ↑ Stephen Wolfram (1988). Mathematica. A System for Doing Mathematics by Computer. Addison-Wesley Publishing Company. pp. XVIII. ISBN 0-201-19334-5.
- ↑ Stephen Wolfram (2011-10-06). "Steve Jobs. A Few Memories". Stephen Wolfram. Writings (ภาษาอังกฤษ). สืบค้นเมื่อ 2020-03-06.
- ↑ Stephen Wolfram (1999). The Mathematica Book: Version 4 (4th ed.). Champaign, IL; New York: Wolfram Media; Cambridge University Press. ISBN 1-57955-004-5.
- ↑ "Mathematica's Evolution – A Lot Has Happened in 30 Years". wolfram.com. สืบค้นเมื่อ 2023-11-06.
- ↑ "Wolfram Finance Platform: Ultimate Financial Computation Environment". www.wolfram.com. สืบค้นเมื่อ 2016-08-01.
- ↑ "Wolfram". www.wolfram.com. สืบค้นเมื่อ 2025-06-17.
{{cite web}}
: ข้อความ "Alpha NOTEBOOK EDITION" ถูกละเว้น (help) - ↑ "Upgrading from Mathematica to Wolfram". wolfram.com. สืบค้นเมื่อ 2025-06-17.
- ↑ Cliff Hastings. "First 10 Minutes with Mathematica 8". wolfram.com. สืบค้นเมื่อ 2023-06-05.
- ↑ "Free Form Linguistic Input". wolfram.com.
- ↑ Heise, 15. November 2013: Mathematica-Chef Wolfram kündigt Programmiersprache an, Herstellerlink: Wolfram Programming Language
- ↑ wolfram.com Wolfram Language – Wissensbasiertes Programmieren
- ↑ ดอกจัน (*) คือสัญลักษณ์ที่ใช้บ่อยสำหรับการคูณในสเปรดชีตและ ภาษาการเขียนโปรแกรมใช้สำหรับการคูณแต่ละองค์ประกอบ
- ↑ การแสดงผลที่นี่ไม่ตรงกับการประมวลผลของ วุลฟรัม ทุกประการเพราะ ตัวคูณร่วมของทุกองค์ประกอบในถูกแยกออกมา
- ↑ Emily Martin, บ.ก. (1996). Mathematica 3.0: Standard Add-on Packages. Champaign, Ill.; Cambridge: Wolfram Media; Cambridge University Press. pp. 207 ff. ISBN 0-9650532-2-9.
- ↑ Polyhedron
- ↑ "Mathematica's Brief Version History". Wolfram Mathematica. สืบค้นเมื่อ 2023-03-16.
- ↑ wolfram.com
- ↑ hackage.haskell.org
- ↑ "สำเนาที่เก็บถาวร". คลังข้อมูลเก่าเก็บจากแหล่งเดิมเมื่อ 2011-07-17. สืบค้นเมื่อ 2024-10-26.
- ↑ library.wolfram.com
- ↑ library.wolfram.com
- ↑ clojuratica.weebly.com
- ↑ heise.de
แหล่งข้อมูลอื่น
[แก้]- Wolfram Research, Inc.
- Offizielle Mathematica-Homepage des deutschen Partners
- Wolfram Alpha (บริการอินเทอร์เน็ตที่ใช้ Mathematica จาก Wolfram Research)
- Der Mathematica Integrator
- Mathematica auf dem Raspberry Pi. Mathematica เวอร์ชันฟรีสำหรับการใช้ที่ไม่ใช่เชิงพาณิชย์