วิทยาศาสตร์การคำนวณ

ถามตอบสำหรับนักวิทยาศาสตร์ที่ใช้คอมพิวเตอร์เพื่อแก้ปัญหาทางวิทยาศาสตร์

4
อัลกอริทึม PCA ที่เร็วที่สุดสำหรับข้อมูลมิติสูง
ฉันต้องการแสดง PCA บนชุดข้อมูลซึ่งประกอบด้วยตัวอย่างประมาณ 40,000 ตัวอย่างแต่ละตัวอย่างแสดงคุณสมบัติประมาณ 10,000 รายการ การใช้ฟังก์ชั่น princomp Matlab ใช้เวลาอย่างต่อเนื่องมากกว่าครึ่งชั่วโมงซึ่งเป็นจุดที่ฉันฆ่ากระบวนการ ฉันต้องการค้นหาการนำไปใช้ / อัลกอริทึมที่ใช้เวลาน้อยกว่า 10 นาที อัลกอริทึมที่เร็วที่สุดคืออะไร ต้องใช้เวลานานเท่าไรกับ i7 dual core / 4GB Ram?

3
การรวมระบบ Monte Carlo ดีกว่าสถานการณ์เสมือน Monte Carlo อย่างไร
คำถามที่ง่ายพอ: การทำอินทิกรัลหลายมิติเนื่องจากมีการตัดสินใจว่าวิธีมอนติคาร์โลบางประเภทนั้นมีความเหมาะสมมีข้อได้เปรียบใด ๆ ที่การรวม MC แบบปกติโดยใช้ตัวเลขเทียมปลอมมีการรวมกึ่งเสมือนมอนติคาร์โล ? ถ้าเป็นเช่นนั้นฉันจะจำสถานการณ์ที่ความได้เปรียบนี้เข้ามาเล่นได้อย่างไร (และถ้าไม่ใช่ทำไมทุกคนเคยใช้การรวมกันของ Monte Carlo แบบเดิม ๆ )

4
ซอฟต์แวร์ที่ดี (ฟรี) สำหรับการผลิตภาพที่เผยแพร่ได้หรือไม่
ตอนนี้ฉันกำลังผลิตภาพ 1d และ 2d โดยใช้ Matlab เพื่อเปรียบเทียบความแม่นยำกับรุ่นที่กำหนด ฉันต้องเปรียบเทียบวิธีการของฉันกับแบบจำลอง. wfn แบบ Gaussian มาตรฐานและฉันจะทำเช่นนั้นโดยการวิเคราะห์ความหนาแน่นของโมเลกุลเช่นเดียวกับ laplacian ฉันสนใจที่จะสร้างภาพสองมิติที่มีความแตกต่างในการประมาณของฉันไปยังการประมาณ. wfn (อาจผ่านทางแผนที่เส้นโค้ง) และฉันก็สนใจในคุณสมบัติ (ความหนาแน่น, laplacian ฯลฯ ) ตามเส้นทางพันธบัตรและเส้นตรงระหว่างสองอะตอม ตามที่ฉันได้กล่าวไปก่อนหน้านี้ฉันกำลังใช้ Matlab เพื่อสร้างภาพของฉันแม้ว่าภาพเหล่านี้ส่วนใหญ่จะเป็นของฉันและผู้ร่วมงานของฉัน พวกเขาดูเหมือนจะไม่เป็นประเภทของภาพที่ฉันมักจะเห็นในเอกสารและสิ่งพิมพ์อื่น ๆ ซอฟต์แวร์ประเภทใดที่ฉันควรใช้ (หรือผู้อื่นใช้) เพื่อสร้างกราฟและภาพสิ่งพิมพ์คุณภาพ?

5
การเพิ่มอายุการเก็บถาวรของรหัส
มีรายการของแนวปฏิบัติที่ดีที่สุดที่เผยแพร่เพื่อให้แน่ใจว่าอายุการใช้งานของโค้ดยาวนานขึ้นพร้อมกับผลลัพธ์ทางวิทยาศาสตร์ที่ทำซ้ำได้หรือไม่? (เช่นโอเพ่นซอร์สแนวทางปฏิบัติด้านเอกสารการเลือกการพึ่งพาการเลือกภาษาเครื่องเสมือน ฯลฯ ) รู้จากการศึกษาใด ๆ (หรือขาดตัวอย่าง / เกร็ดเล็กเกร็ดน้อย) ที่พยายามประเมินครึ่งชีวิตของรหัสทางวิทยาศาสตร์ทั่วไปหรือซอฟต์แวร์อื่น ๆ (ถ้านั่นเป็นคำถามที่สมเหตุสมผล)

1
สำหรับซอฟต์แวร์ที่ส่งไปยัง ACM TOMS ข้อตกลงสิทธิ์การใช้งานซอฟต์แวร์ ACM จะทำงานกับใบอนุญาตอื่น ๆ อย่างไร
วารสารสมาคมเพื่อการคำนวณธุรกรรมเครื่องจักรเกี่ยวกับซอฟต์แวร์ทางคณิตศาสตร์ (ACM TOMS)ตีพิมพ์บทความจำนวนมากเกี่ยวกับอัลกอริทึมเชิงตัวเลขที่มีการใช้งานซอฟต์แวร์ ตามนโยบายด้านบรรณาธิการการส่งรายงานขั้นตอนวิธีรวมถึงซอร์สโค้ดสำหรับการใช้งานอัลกอริทึมที่อธิบายไว้ในบทความดังกล่าว รหัสแหล่งที่มานี้เป็นเรื่องที่ซอฟท์แว ACM ลิขสิทธิ์และข้อตกลงใบอนุญาต เนื่องจากฉันสนใจที่จะปล่อยการใช้งานซอฟต์แวร์ของงานของฉันเองฉันจึงกังวลเกี่ยวกับผลกระทบทางกฎหมายของใบอนุญาตนี้ ใบอนุญาตซอฟต์แวร์นี้ทำงานอย่างไรกับใบอนุญาตโอเพ่นซอร์สทั่วไป (เช่นใบอนุญาต GPLv3, BSD, MIT / X11 และ Apache)

2
คำแนะนำเกี่ยวกับ Python สำหรับการเขียนโปรแกรมแบบขนานหน่วยความจำ
ฉันมีประสบการณ์ในการเขียนรหัส OpenMP สำหรับเครื่องหน่วยความจำที่ใช้ร่วมกัน (ทั้งใน C และ FORTRAN) เพื่อทำงานง่ายๆเช่นการเพิ่มเมทริกซ์การคูณและอื่น ๆ (เพื่อดูว่ามันแข่งขันกับ LAPACK อย่างไร) ฉันรู้จัก OpenMP มากพอที่จะทำงานง่ายๆโดยไม่จำเป็นต้องดูเอกสาร เมื่อเร็ว ๆ นี้ฉันเปลี่ยนเป็น Python สำหรับโครงการของฉันและฉันไม่มีประสบการณ์ใด ๆ กับ Python เกินพื้นฐานแน่นอน ฉันมีคำถาม 2 ข้อ: มีคำแนะนำที่ดี (PDF ออนไลน์) สำหรับการอธิบายการคำนวณหน่วยความจำแบบขนานที่ใช้ร่วมกันสำหรับ Python หรือไม่? วิธีที่ดีที่สุดในการบรรลุเป้าหมายคืออะไร? ฉันเคยเห็นมาบ้างctypesแล้วและฉันก็ไม่แน่ใจว่าเป็นวิธีที่ดีที่สุดหรือไม่ (โดยที่ดีที่สุดฉันหมายถึงหนึ่งซึ่งมีการแลกเปลี่ยนที่ดีระหว่างเวลาโปรแกรมเมอร์และเวลาระบบมันไม่ควรน่าเบื่อเกินไปที่จะเขียนโค้ดและไม่ควรทำการประมวลผลที่ช้า)

1
การแก้ระบบเชิงเส้นหนาแน่นขนาดใหญ่?
มีความหวังในการแก้ระบบเชิงเส้นต่อไปนี้อย่างมีประสิทธิภาพด้วยวิธีการวนซ้ำหรือไม่? A ∈ Rn × n, x ∈ Rn, b ∈ Rnด้วย n > 106A∈Rn×n,x∈Rn,ข∈Rnกับ n>106A \in \mathbb{R}^{n \times n}, x \in \mathbb{R}^n, b \in \mathbb{R}^n \text{, with } n > 10^6 A x = bAx=ขAx=b กับ A = ( Δ - K)A=(Δ-K) A=(\Delta - K) โดยที่ΔΔ\Deltaเป็นเมทริกซ์เบาบางมากที่มีเส้นทแยงมุมสองสามอันเกิดจาก discretization ของ Laplace …

1
อัลกอริทึมสำหรับการตรวจหาชุมชนสำหรับกราฟสองฝ่าย?
มีอัลกอริธึมสำหรับการตรวจหาชุมชนสำหรับกราฟสองฝ่าย (เครือข่าย 2 โหมด) ที่ใช้ในการคัดลายมือ, networkX, R หรือ Python ฯลฯ หรือไม่? โดยเฉพาะอย่างยิ่งมีการใช้งานแบบไหนที่จะ จำกัด การตรวจจับของชุมชนเพียงแค่หนึ่งในสองโหมดนี้หรือไม่?

3
ห้องสมุดสำหรับแก้สมการของ Lyapunov
สมการเมทริกซ์ต่อไปนี้ ในสำหรับเมทริกซ์และปรากฏในงานของฉันเป็นลักษณะของเมทริกซ์ความแปรปรวนร่วม ฉันได้เรียนรู้ว่าสมการนี้เป็นที่รู้จักโดยเฉพาะอย่างยิ่งในทฤษฎีการควบคุมเวลาต่อเนื่องในฐานะสมการของ Lyapunovและมีอัลกอริทึมที่รู้จักกันดีมากมายสำหรับการแก้ปัญหาที่ใช้ประโยชน์จากลักษณะพิเศษของสมการเชิงเส้นนี้ B Σ + Σ BT+ C= 0BΣ+ΣBT+C=0B\Sigma + \Sigma B^T + C = 0ΣΣ\Sigma -−-BBBคCC-−- จาก googling ฉันได้เรียนรู้ว่ามีการใช้งาน Matlab และ Fortran อยู่ ฉันพบ SLICOT และ RECSY เนื่องจากปัญหาสิทธิ์การใช้งานการเข้าถึงแหล่ง SLICOT ถูกหยุดลง งานส่วนใหญ่ของฉันถูกนำไปใช้ใน R และเมื่อฉันไม่สามารถหาส่วนต่อประสาน R เพื่อแก้ปัญหาได้ คำถามของฉันคือถ้า SLICOT เป็นห้องสมุด Fortran (หรือ C) ที่ดีที่สุดที่มีอยู่พร้อมกับการแก้สมการของ Lyapunov? ฉันยังสนใจในการใช้งานที่สามารถจัดการเมทริกซ์กระจัดกระจายได้ BBB

2
คุณจะปรับปรุงความแม่นยำของวิธีผลต่างอันตะ จำกัด สำหรับการค้นหาระบบอีเจนเนติกของ ODE เชิงเส้นเอกพจน์
ฉันพยายามที่จะแก้สมการของประเภท: ( - ∂2∂x2- ฉ( x ) ) ψ(x)=λψ(x)(−∂2∂x2−f(x))ψ(x)=λψ(x) \left( -\tfrac{\partial^2}{\partial x^2} - f\left(x\right) \right) \psi(x) = \lambda \psi(x) ที่ไหนมีเสาง่ายที่0สำหรับที่เล็กที่สุดNเวกเตอร์ลักษณะเฉพาะ เงื่อนไขขอบเขตคือ: ψ ( 0 ) = 0และψ ( R ) = 0และฉันก็แค่มองไปที่ฟังก์ชั่นในช่วง( 0 , R ]ฉ( x )f(x)f(x)000ยังไม่มีข้อความNNψ ( 0 ) = 0ψ(0)=0\psi(0) = 0ψ(R)=0ψ(R)=0\psi(R)=0(0,R](0,R](0,R] อย่างไรก็ตามถ้าฉันทำวิธีที่แตกต่างกันอย่างง่าย ๆ , เว้นระยะเท่ากัน, ค่าลักษณะเฉพาะที่เล็กที่สุดนั้นไม่ถูกต้องมาก, …


2
วิธีการประมาณค่าข้อมูลหลายจุดเข้ากับศูนย์กลางเซลล์ของตาข่ายที่ไม่มีโครงสร้าง
ฉันมีชุดของข้อมูลภาคสนามหลายจุดชุดข้อมูลแต่ละจุดเกี่ยวข้องกับเซลล์เดียวของตาข่ายที่ไม่มีโครงสร้าง เป้าหมายคือการสอดแทรกข้อมูลไปยังศูนย์เซลล์โดยตรงหรือโดยอ้อมในวิธีที่ถูกต้องที่สุด ถ้าฉันใช้การแก้ไขค่าน้ำหนักในระยะทางผกผันในกรณีที่ระยะห่างระหว่างต้นทางและเป้าหมาย (ศูนย์เซลล์) มีขนาดเล็กมากฉันอาจสิ้นสุดด้วยข้อยกเว้นจุดลอย สำหรับการแก้ไขแบบนี้บนตาข่ายที่มีโครงสร้างจะใช้การแก้ไขแบบถ่วงน้ำหนักปริมาณ สิ่งนี้ไม่แปลโดยตรงไปยังเซลล์ตาข่ายที่มีรูปร่างตามอำเภอใจ แนะนำให้ใช้ความอดทนสำหรับการแก้ไข IDW เพื่อหลีกเลี่ยง SIGFPE เหมาะสมถ้าฉันไม่แนะนำการทดสอบใด ๆ ที่อาจทำให้การแก้ไขไม่มีประสิทธิภาพ คือการเพิ่มขนาดเล็กพอจะหารน้ำหนักทุกตัวเลือกที่เป็นไปได้ด้วยการแก้ไข IDW? คุณทราบวิธีการแก้ไขที่เหมาะสมสำหรับปัญหานี้อย่างไรδδ\delta ข้อมูลเพิ่มเติม: สำหรับการแก้ไขจากตาข่ายไปยังจุดที่ฉันใช้การแก้ไขขึ้นอยู่กับพิกัด barcycentric แต่ละเซลล์โพลีฮีดของตาข่ายจะถูกย่อยสลายเป็นเตตราฮีดรา ถือเป็นศูนย์กลางข้อมูลจะสอดแทรกไปยังจุดมือถือโดยใช้IDW แก้ไข การค้นหาจะดำเนินการในแต่ละจุดเพื่อหาจัตุรมุขภายในซึ่งมันอยู่และค่านิยมที่มีการ interpolaed ใช้แก้ไข Barycentric สำหรับการแก้ไขจากจุดหนึ่งไปยังอีกด้านหนึ่งเป็นไปไม่ได้ ค่าที่อยู่ตรงกลางของเซลล์ไม่เป็นที่รู้จัก ไม่มีทางที่จะรวบรวมองค์ประกอบ tetrahedral ที่จะบังคับใช้ไม่เป็นที่W P Cมีน้ำหนักที่เกี่ยวข้องกับจุดP และศูนย์เซลล์ C นี่มาจากข้อเท็จจริงที่ว่าการกำหนดค่าจุดโดยพลการ ดังนั้นฉันกำลังใช้ IDW สำหรับสิ่งนี้ทำให้แน่ใจว่าฉันไม่ได้รับการยกเว้นจุดลอยตัว มีวิธีการแก้ไขที่เหมาะสมกว่าสำหรับปัญหานี้หรือไม่?∑pWPC=1∑pWPC=1\sum_p W_{PC} = 1WPCWPCW_{PC}

1
วิธีการตรวจหาหลายหลากสำหรับค่าลักษณะเฉพาะ?
สมมติว่า A เป็นเมทริกซ์กระจัดกระจายทั่วไปและฉันต้องการคำนวณค่าลักษณะเฉพาะ ฉันไม่ทราบวิธีตรวจจับหลายหลากสำหรับค่าลักษณะเฉพาะ เท่าที่ฉันรู้ในกรณีพิเศษการค้นหารากของพหุนามด้วยวิธีเมทริกซ์ร่วมเราสามารถใช้ RRQR เพื่อตรวจสอบความหลากหลายของราก

1
การฉายพื้นที่ว่างของ
เมื่อพิจารณาจากระบบที่ฉันได้อ่านว่าในกรณีที่การทำซ้ำ Jacobi ถูกใช้เป็นนักแก้ปัญหาวิธีนี้จะไม่มาบรรจบกันถ้าไม่มีศูนย์ องค์ประกอบใน null พื้นที่ของ ดังนั้นวิธีหนึ่งอย่างเป็นทางการสามารถระบุได้อย่างไรว่าหากมีองค์ประกอบที่ไม่เป็นศูนย์ซึ่งประกอบไปด้วยพื้นที่ว่างของ , วิธี Jacobi นั้นไม่เป็นการรวมกัน? ฉันสงสัยว่าจะทำอย่างไรให้เป็นทางการทางคณิตศาสตร์ได้เนื่องจากส่วนหนึ่งของฉากตั้งฉากกับพื้นที่ว่างนั้นมาบรรจบกันA ∈ R n × n b A b Ax = B ,Ax=b,Ax=b,A ∈ Rn × nA∈Rn×nA\in\mathbb{R}^{n\times n}ขbbAAAขbbAAA ดังนั้นโดยการฉายช่องว่างว่างของจากแต่ละการวนซ้ำมันจะมาบรรจบกัน (หรือ?)AAA ......... ฉันสนใจเป็นพิเศษในกรณีของ ที่เป็นเมทริกซ์ Laplacian แบบสมมาตรที่มีช่องว่างว่างที่เวกเตอร์และมีองค์ประกอบเป็นศูนย์ใน null-space ของ ,ที่เป็นเมทริกซ์กึ่งกลาง นั่นหมายความว่าย้ำ Jacobi แต่ละคนจะมีช่องว่างของคาดการณ์ไว้เช่น. แต่ละ iterate จะอยู่กึ่งกลาง ? ฉันถามสิ่งนี้ตั้งแต่นั้นมาก็ไม่จำเป็นต้องฉายว่างของจาก Jacobi iterates (หรือกล่าวอีกนัยหนึ่งถึงจุดศูนย์กลางL …

4
แพคเกจ / อินเตอร์เฟส Python ที่ดีที่สุดสำหรับตัวแก้ปัญหาแบบเบาบางคืออะไร
กรุณาระบุแพ็คเกจ Python (Petsc4py ฯลฯ ... ) และตัวแก้ปัญหาแบบเบาบางโดยตรงที่รองรับ โปรดหนึ่งคำตอบ (community-wiki) ต่อแพ็คเกจ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.