คำตอบที่ได้รับเลือกจากเจ้าของกระทู้
ความคิดเห็นที่ 1
ผมแนะนำนะครับ ถ้าไม่มีพื้นฐานทางด้านการเขียนโปรแกรมเลย อย่าเริ่มที่ MATLAB ครับ มันจะทำให้เสียนิสัย(มันสะดวกสบายเกิน) เพราะ โปรแกรมที่ใช้กัน หรือ Library สำหรับแก้ปัญหาทาง Physics ส่วนใหญ่ ไม่ได้เขียนด้วย MATLAB ครับ ดังนั้น การที่เราจะเอา Library พวกนั้นมาใช้ ต้องมีความรู้ภาษาอื่น เช่น C++, Fortran
ขอแนะนำให้เริ่มจาก C++ ครับ เพราะจะได้คอนเซปของ Object-oriented programming ซึ่งสำคัญมากในการเขียนโปรแกรมต่อไปในระดับที่สูงขึ้น เมื่อเรา อยู่กับภาษาใดภาษาหนึ่งแล้ว ได้ คอนเซปการเขียนแล้ว ต่อไปการจะเปลี่ยนภาษาไปไม่ใช่เรื่องยากเลยครับ โดยเฉพาะ MATLAB ที่มี Function ให้ใช้ ง่ายมาก
ส่วนตัวเคยมีโอกาสเรียน Computational method ระดับ Grad ของ Physics department นะครับ ซึ่งทำให้ผมคิดว่า Programming มันสำคัญมากต่อการเรียน Physics ครับ ยกตัวอย่างเช่น หากเราเขียนโปรแกรม solve Schroedinger equation แล้ว เราลองเล่นกับมัน จะทำให้เราเข้าใจคอนเซปได้ดีขึ้นมาเลยครับ รวมไปถึงการวิธีการ solve โจทย์ต่างๆ เช่น Monte carlo
หนังสือที่แนะนำนะครับ (กอป มาจาก syllabus วิชาที่เรียน)
ด้าน Programming นะครับ
-The C programming language, Brian W. Kernighan and Dennis M. Ritchie (1988)
-Object-Oriented Analysis and Design with Applications, Grady Booth (1994)
-Effective C++ (2005), More Effective C++, (1996), and Effective STL (2001), Scott
Myers
อันนี้เป็น หนังสือที่ใช้เรียนนะครับ ส่วนใหญ่จะเน้นเล่มที่ 1 มากกว่าที่เหลือ อ่านเสริมบางบทครับ
-Numerical Recipes, the Art of Scientific Computing, 3rd Edition, William H. Press, Saul
A. Teukolsky, William T. Vetterling, and Brian P Flannery, 2007 (Cambridge University
Press).
-Methods of Numerical Integration, Philip J. Davis and Philip Rabinowitz (1975)
-Orthogonal Polynomials, Gabor Szego (1939)
-Numerical Methods for Ordinary Differential Equations, J.C. Butcher (2008)
-Numerical Recipes: the art of scientific computing, William H. Press et al. (2007)
-Modern Quantum Chemistry: introduction to advanced electronic structure Attila Szabo
(1989)
-Neural networks for pattern recognition, Christopher M. Bishop (1995)
-Introduction to Percolation Theory, Dietrich Stauffer (1985)
Programming เป็นทักษะครับ ไม่มีหนังสือไหนที่อ่านแล้วทำให้เราเก่งได้เลย ต้องเกิดจากการฝึกฝน เขียนบ่อยๆครับ แรกๆอาจจะยากหน่อย หลังจากนั้นจะสบายครับ
ขอแนะนำให้เริ่มจาก C++ ครับ เพราะจะได้คอนเซปของ Object-oriented programming ซึ่งสำคัญมากในการเขียนโปรแกรมต่อไปในระดับที่สูงขึ้น เมื่อเรา อยู่กับภาษาใดภาษาหนึ่งแล้ว ได้ คอนเซปการเขียนแล้ว ต่อไปการจะเปลี่ยนภาษาไปไม่ใช่เรื่องยากเลยครับ โดยเฉพาะ MATLAB ที่มี Function ให้ใช้ ง่ายมาก
ส่วนตัวเคยมีโอกาสเรียน Computational method ระดับ Grad ของ Physics department นะครับ ซึ่งทำให้ผมคิดว่า Programming มันสำคัญมากต่อการเรียน Physics ครับ ยกตัวอย่างเช่น หากเราเขียนโปรแกรม solve Schroedinger equation แล้ว เราลองเล่นกับมัน จะทำให้เราเข้าใจคอนเซปได้ดีขึ้นมาเลยครับ รวมไปถึงการวิธีการ solve โจทย์ต่างๆ เช่น Monte carlo
หนังสือที่แนะนำนะครับ (กอป มาจาก syllabus วิชาที่เรียน)
ด้าน Programming นะครับ
-The C programming language, Brian W. Kernighan and Dennis M. Ritchie (1988)
-Object-Oriented Analysis and Design with Applications, Grady Booth (1994)
-Effective C++ (2005), More Effective C++, (1996), and Effective STL (2001), Scott
Myers
อันนี้เป็น หนังสือที่ใช้เรียนนะครับ ส่วนใหญ่จะเน้นเล่มที่ 1 มากกว่าที่เหลือ อ่านเสริมบางบทครับ
-Numerical Recipes, the Art of Scientific Computing, 3rd Edition, William H. Press, Saul
A. Teukolsky, William T. Vetterling, and Brian P Flannery, 2007 (Cambridge University
Press).
-Methods of Numerical Integration, Philip J. Davis and Philip Rabinowitz (1975)
-Orthogonal Polynomials, Gabor Szego (1939)
-Numerical Methods for Ordinary Differential Equations, J.C. Butcher (2008)
-Numerical Recipes: the art of scientific computing, William H. Press et al. (2007)
-Modern Quantum Chemistry: introduction to advanced electronic structure Attila Szabo
(1989)
-Neural networks for pattern recognition, Christopher M. Bishop (1995)
-Introduction to Percolation Theory, Dietrich Stauffer (1985)
Programming เป็นทักษะครับ ไม่มีหนังสือไหนที่อ่านแล้วทำให้เราเก่งได้เลย ต้องเกิดจากการฝึกฝน เขียนบ่อยๆครับ แรกๆอาจจะยากหน่อย หลังจากนั้นจะสบายครับ
แสดงความคิดเห็น
ทักษะที่จำเป็นในการเขียนโปรแกรมคำนวนมีอะไรบ้างครับ ?
ตัวผมเองไม่มีพื้นฐานด้านการเขียนโปรแกรมเลย จึงอยากขอความเห็นจากพี่ๆพันทิปว่า ถ้าจะเริ่มหัดใช้โปรแกรมคำนวน(Mathlab) ต้องเริ่มจากตรงไหน มีทักษะอะไรบ้างที่ต้องใช้ ควรศึกษาอะไรเพิ่มเติม หรือถ้าเป็นไปได้ขอเป็นชื่อหนังสือไว้ด้วยก็ได้ครับ ขอบคุณมากครับ