คำถามติดแท็ก numerics

4
มาตรฐานทางวิทยาศาสตร์สำหรับข้อผิดพลาดเชิงตัวเลข
ในสาขาการวิจัยของฉันข้อกำหนดของข้อผิดพลาดในการทดลองได้รับการยอมรับกันโดยทั่วไปและสิ่งตีพิมพ์ที่ไม่สามารถให้พวกเขาได้รับการวิจารณ์อย่างสูง ในเวลาเดียวกันฉันมักจะพบว่าผลลัพธ์ของการคำนวณเชิงตัวเลขมีให้โดยไม่ต้องมีบัญชีของข้อผิดพลาดที่เป็นตัวเลขแม้ว่า (หรืออาจเป็นเพราะ) มักจะวิธีการเชิงตัวเลขที่น่าสงสัยอยู่ในที่ทำงาน ฉันกำลังพูดถึงข้อผิดพลาดซึ่งเป็นผลมาจาก discretization และความแม่นยำที่ จำกัด ของการคำนวณเชิงตัวเลข ฯลฯ แน่นอนว่าการประเมินข้อผิดพลาดเหล่านี้ไม่ใช่เรื่องง่ายที่จะได้รับเสมอเช่นในกรณีของสมการพลังน้ำ แต่บ่อยครั้ง ข้อกำหนดของการประมาณการข้อผิดพลาดเชิงตัวเลขควรเป็นมาตรฐานเช่นเดียวกับที่ใช้สำหรับผลการทดลอง ดังนั้นคำถามของฉัน:

1
การยกเลิกภัยพิบัติใน Logum
ฉันพยายามใช้ฟังก์ชันต่อไปนี้ในทศนิยมที่มีความแม่นยำสองเท่าและมีข้อผิดพลาดสัมพัทธ์ต่ำ: l o g s u m (x,y) = บันทึก( ประสบการณ์( x ) + exp( y) )logsum(x,y)=log⁡(exp⁡(x)+exp⁡(y))\mathrm{logsum}(x,y) = \log(\exp(x) + \exp(y)) สิ่งนี้ถูกใช้อย่างกว้างขวางในแอปพลิเคชันทางสถิติเพื่อเพิ่มความน่าจะเป็นหรือความหนาแน่นของความน่าจะเป็นที่แสดงในพื้นที่บันทึก แน่นอนว่าหรือสามารถโอเวอร์โฟลว์หรืออันเดอร์โฟล์วได้ง่ายซึ่งอาจจะไม่ดีเพราะพื้นที่บันทึกถูกใช้เพื่อหลีกเลี่ยงการมีอันเดอร์โฟล์ในตอนแรก นี่เป็นวิธีแก้ปัญหาทั่วไป:exp ( y )ประสบการณ์( x )exp⁡(x)\exp(x)ประสบการณ์( y)exp⁡(y)\exp(y) l o g s u m (x,y) = x + l o g 1 p ( exp( y- x ) …

1
วิธีเรียกใช้ MPI-3.0 ในโหมดหน่วยความจำที่แชร์เช่น OpenMP
ฉันกำลังโค้ดแบบขนานเพื่อแก้ตัวเลขแบบจำลองสมดุลประชากร 5 มิติ ขณะนี้ฉันมีรหัส MPICH2 ที่ดีมากใน FORTRAN แต่เมื่อเราเพิ่มค่าพารามิเตอร์อาร์เรย์จะใหญ่เกินไปที่จะทำงานในโหมดหน่วยความจำแบบกระจาย ฉันสามารถเข้าถึงคลัสเตอร์ที่มี 15 โหนดโดยที่แต่ละโหนดมี CPU หลัก 8 ตัวและ RAM ขนาด 128GB ฉันต้องการเขียนเรียกใช้โปรแกรมด้วย MPI-3.0 ในโหมดหน่วยความจำที่ใช้ร่วมกันเพื่อให้แต่ละกระบวนการไม่สร้างสำเนาของแต่ละอาร์เรย์ขึ้นมาเอง ก่อนที่ฉันจะรันอะไรก็ได้ในคลัสเตอร์ฉันต้องทดสอบบนเดสก์ท็อปที่ใช้ Ubuntu มันคือเบลดหนึ่งคลัสเตอร์ที่มี CPU 8 คอร์สองตัวและ RAM ขนาด 128 GB ฉันจะเขียนและทดสอบรหัสของฉันบนมันดังนั้นโปรดส่งคำตอบของคุณไปยังโปรแกรมที่ทำงานบนคอมพิวเตอร์ Ubuntu ฉันได้อ่านแล้วว่ามีวิธีเรียกใช้ MPI-3.0 ในโหมดหน่วยความจำที่ใช้ร่วมกันเช่น OpenMP แทนที่จะเป็นโหมดหน่วยความจำเริ่มต้นแบบกระจาย คำถาม: ฉันจะเปลี่ยนรหัสได้อย่างไร ฉันต้องเพิ่มการเรียกไปยังฟังก์ชั่น MPI อื่นMPI_WIN_ALLOCATEหรือไม่? ฉันจะรวบรวมรหัสของฉันเพื่อเรียกใช้ MPI-3.0 ในโหมดหน่วยความจำที่ใช้ร่วมกันได้อย่างไร สิ่งนี้จะแตกต่างกันหรือไม่หากมีหลายโหนด โปรดให้สคริปต์การรวบรวมตัวอย่างถ้าคุณทำได้ ฉันมีคอมไพเลอร์ GNU …

1
มีทางลัดสำหรับระบบที่เป็นตัวเลขโดยประมาณของสมการเชิงอนุพันธ์สามัญเมื่อเป็นแบบอัตโนมัติหรือไม่?
อัลกอริทึมที่มีอยู่สำหรับการแก้ปัญหา ODE จะจัดการกับฟังก์ชันที่Y∈Rn แต่ในระบบกายภาพหลายระบบสมการเชิงอนุพันธ์จะเป็นอิสระดังนั้นdydYdเสื้อ= f( y, t )dydt=f(y,t)\frac{dy}{dt} = f(y, t)y∈Rny∈Rny \in \mathbb R^n,y∈Rnโดยที่t ถูกปล่อยออกมา ด้วยข้อสมมติฐานที่ทำให้เข้าใจง่ายนี้จะเห็นการปรับปรุงอะไรบ้างในวิธีการเชิงตัวเลขที่มีอยู่ ตัวอย่างเช่นถ้าn=1ปัญหาจะเปลี่ยนเป็นt=∫dydydt=f(y)dydt=f(y)\frac{dy}{dt} = f(y)y∈Rny∈Rny \in \mathbb R^ntttn=1n=1n=1และเราเปลี่ยนเป็นอัลกอริธึมที่แตกต่างอย่างสิ้นเชิงสำหรับการรวมอินทิกรัลหนึ่งมิติ สำหรับn>1การปรับปรุงเป็นไปได้สูงสุดคือการลดมิติของปีโดย 1 เพราะกรณีนี้ขึ้นกับเวลาที่สามารถจำลองโดยการผนวกทีจะYเปลี่ยนโดเมนของYจากRnเพื่อRn+1t=∫dyf(y)t=∫dyf(y)t = \int \frac{dy}{f(y)}n>1n>1n>1yyytttyyyyyyRnRn\mathbb R^nRn+1Rn+1\mathbb R^{n+1}
10 ode  numerics 

1
ปัญหาเบนช์มาร์กสำหรับอัลกอริทึมการเรียงลำดับใหม่ของค่าเฉพาะ
ทุกคนจริงเมทริกซ์สามารถลดลงในฟอร์ม Schur จริงT = U T Uใช้มุมฉาก similiary เปลี่ยนU เมทริกซ์Tนี่คือรูปแบบกึ่งสามเหลี่ยมโดยมี 1 คูณ 1 หรือ 2 คูณ 2 บล็อกบนเส้นทแยงมุมหลัก แต่ละบล็อก 1 ต่อ 1 สอดคล้องกับค่าลักษณะเฉพาะที่แท้จริงของAและแต่ละบล็อก 2 ต่อ 2 สอดคล้องกับคู่ค่าลักษณะเชิงสังยุคที่ซับซ้อนของAAAAT= UTUT=UTAUT = U^T A UยูUUTTTAAAAAA ปัญหาการจัดเรียงใหม่ eigenvalue ประกอบด้วยการหาฉากการเปลี่ยนแปลงความคล้ายคลึงกันดังกล่าวว่าการเลือกค่าลักษณะเฉพาะของผู้ใช้ปรากฏตามเส้นทแยงมุมของมุมซ้ายบนของS = V T T VVVVAAAS=VTTVS=VTTVS = V^T T V ใน LAPACK รูทีนความแม่นยำสองเท่าที่เกี่ยวข้องที่เรียกว่า DTRSEN Daniel Kressner …

2
วิธีเชิงตัวเลขสำหรับการแก้สมการที่ใช้กับฟังก์ชันที่คำนวณโดยสุ่ม
มีวิธีการทางตัวเลขที่รู้จักกันดีสำหรับการแก้สมการประเภท เช่น bisection วิธีวิธีของนิวตัน ฯลฯf(x)=0,x∈Rn,f(x)=0,x∈Rn, f(x) = 0, \quad x \in \mathbb{R}^n, ในใบสมัครของฉันคำนวณด้วยวิธีสุ่ม (ผลลัพธ์คือค่าเฉลี่ย)f(x)f(x)f(x) มีวิธีการแก้สมการเชิงตัวเลขที่จัดการกับสถานการณ์นี้ด้วยหรือไม่? ลิงค์ไปยังการอภิปรายเกี่ยวกับสถานการณ์ที่คล้ายกันใด ๆ ก็ชื่นชม ความแม่นยำที่ฉันสามารถคำนวณขึ้นอยู่กับxอย่างมากและฉันอาจชนกำแพงที่ฉันไม่สามารถเพิ่มความแม่นยำได้อย่างง่ายดายโดยไม่ต้องเพิ่มเวลาในการคำนวณอย่างมีนัยสำคัญ ดังนั้นฉันไม่สามารถเพิกเฉยต่อความจริงที่ว่าผลลัพธ์จากfไม่แม่นยำ สิ่งนี้จะส่งผลกระทบต่อความแม่นยำซึ่งxสามารถพบได้ในทางปฏิบัติf(x)f(x)f(x)xxxfffxxx

4
ความเกี่ยวข้องของการคำนวณที่มีจุดคงที่และความแม่นยำโดยพลการ
ฉันเห็นไลบรารี่ / แพ็กเกจการประมวลผลจุดลอยตัวน้อยมาก เนื่องจากความไม่ถูกต้องของการเป็นตัวแทนจุดลอยตัวคำถามเกิดขึ้นว่าทำไมมีอย่างน้อยบางฟิลด์ที่ความแม่นยำที่เพิ่มขึ้นนี้อาจคุ้มค่ากับความซับซ้อนของการทำงานกับจุดคงที่ มีปัญหาใด ๆ ในการใช้ MAJOR พูดแก้จุดเฉพาะค่าคงที่? จะช้า / เร็วไม่ถูกต้อง / แม่นยำได้อย่างไร ที่เกี่ยวข้อง: นี่และสิ่งนี้

3
การทดสอบการถดถอยของแบบจำลองเชิงตัวเลข
เมื่อเรามีแบบจำลองเชิงตัวเลขที่แสดงถึงระบบร่างกายจริงและแสดงความโกลาหล (เช่นแบบจำลองพลศาสตร์ของไหลแบบจำลองสภาพภูมิอากาศ) เราจะรู้ได้อย่างไรว่าแบบจำลองนั้นทำงานได้ดีเท่าที่ควร เราไม่สามารถเปรียบเทียบเอาท์พุทแบบจำลองสองชุดได้โดยตรงเนื่องจากแม้แต่การเปลี่ยนแปลงเพียงเล็กน้อยในสภาวะเริ่มต้นจะเปลี่ยนผลลัพธ์ของการจำลองแบบบุคคลอย่างมาก เราไม่สามารถเปรียบเทียบโมเดลเอาต์พุตกับการสังเกตโดยตรงได้เนื่องจากเราไม่สามารถรู้รายละเอียดเงื่อนไขเริ่มต้นของการสังเกตได้อย่างเพียงพอและการประมาณเชิงตัวเลขจะทำให้เกิดความแตกต่างเล็กน้อยที่จะแพร่กระจายผ่านระบบ คำถามนี้ได้รับแรงบันดาลใจบางส่วนจากคำถามของ David Ketcheson เกี่ยวกับการทดสอบหน่วยทางวิทยาศาสตร์ : ฉันสนใจเป็นพิเศษในการทดสอบการถดถอยสำหรับแบบจำลองดังกล่าว หากการเปลี่ยนแปลงเงื่อนไขเริ่มต้นเล็กน้อยสามารถนำไปสู่การเปลี่ยนแปลงที่สำคัญ (ซึ่งอาจยังเป็นตัวแทนที่เพียงพอของความเป็นจริง) แล้วเราจะแยกการเปลี่ยนแปลงเหล่านั้นออกจากการเปลี่ยนแปลงที่เกิดจากการปรับเปลี่ยนพารามิเตอร์หรือการใช้งานรูทีนตัวเลขใหม่ได้อย่างไร
10 testing  numerics 

5
ส่วนประกอบสำคัญในพื้นที่บันทึกการทำงาน
ฉันกำลังทำงานกับฟังก์ชั่นซึ่งโดยทั่วไปแล้วจะราบรื่นกว่าและทำงานได้ดีกว่าในพื้นที่ล็อก - ล็อก - นั่นคือที่ที่ฉันทำการแก้ไข / คาดการณ์ ฯลฯ และทำงานได้ดีมาก มีวิธีรวมฟังก์ชันตัวเลขเหล่านี้ในพื้นที่บันทึกล็อกหรือไม่ เช่นฉันหวังว่าจะใช้กฎ trapezoidal แบบง่าย ๆ ในการหาอินทิกรัลสะสม (เช่นใน python, use scipy.integrate.cumtrapz) เพื่อหาF( r )F(r)F(r) เซนต์ F( r ) =∫R0Y( x )dxF(r)=∫0ry(x)dxF(r) = \int_0^r y(x) \, dx แต่ฉันหวังว่าจะใช้ค่า l o g( y)log(y)log(y) และ l o g( x )log(x)log(x), แทน Yyy และ xxx (เมื่อเป็นไปได้).

3
การคำนวณเชิงวิทยาศาสตร์เทียบกับการวิเคราะห์เชิงตัวเลข
ฉันเป็นวิชาเอกสาขาวิทยาศาสตร์คอมพิวเตอร์และคณิตศาสตร์ ฉันรักทั้งสองวิชา ฉันกำลังคิดว่าจะเรียนต่อในระดับบัณฑิตศึกษาหรืออาจใช้ในการคำนวณทางวิทยาศาสตร์ ความแตกต่างที่แท้จริงระหว่างการคำนวณทางวิทยาศาสตร์และการวิเคราะห์เชิงตัวเลขคืออะไร? พวกเขาเรียนเป็นอาชีพหรือไม่

2
การใช้การเรียนรู้ของเครื่องในการคำนวณพลศาสตร์ของไหล
ความเป็นมา: ฉันได้สร้างโซลูชันตัวเลขที่ใช้งานได้หนึ่งตัวสำหรับ Navier-Stokes 2d เท่านั้นสำหรับหลักสูตร มันเป็นทางออกสำหรับการไหลของโพรงที่ขับเคลื่อนด้วยฝา อย่างไรก็ตามหลักสูตรดังกล่าวได้พูดคุยเกี่ยวกับสกีมาจำนวนหนึ่งสำหรับการแยกเชิงพื้นที่และการแยกเวลา ฉันใช้หลักสูตรการจัดการสัญลักษณ์มากขึ้นที่นำไปใช้กับ NS ด้วย แนวทางตัวเลขเพื่อจัดการการแปลงสมการวิเคราะห์ / สัญลักษณ์จาก PDE เป็นผลต่างที่แน่นอน ได้แก่ : ออยเลอร์ FTFS, FTCS, BTCS หละหลวม การเล่นต้องเตจุดกึ่งกลาง หละหลวม-Wendroff MacCormack ออฟเซ็ตกริด (การกระจายเชิงพื้นที่ช่วยให้ข้อมูลสามารถแพร่กระจายได้) TVD สำหรับฉันในเวลาเหล่านี้ดูเหมือนว่า "ชื่อแทรกพบรูปแบบและมันเกิดขึ้นในการทำงาน" หลายสิ่งเหล่านี้มาจากก่อนเวลา "ซิลิคอนที่อุดมสมบูรณ์" พวกเขาทั้งหมดประมาณ ในวงเงินที่พวกเขา ในทางทฤษฎีนำไปสู่การ PDE ในขณะที่ Direct Numerical Simulation ( DNS ) คือความสนุกและ Reynolds Averaged Navier-Stokes ( RANS ) …

3
วิธีไฟไนต์เอลิเมนต์และวิธีไฟไนต์เอลิเมนต์แบบขยาย (FEM กับ XFEM)
อะไรคือความแตกต่างที่สำคัญระหว่าง FEM และ XFEM เมื่อใดที่เรา (ไม่) ใช้ XFEM แทนการใช้ FEM และในทางกลับกัน กล่าวอีกนัยหนึ่งเมื่อฉันพบปัญหาใหม่ฉันจะรู้ได้อย่างไรว่าจะใช้หนึ่งในนั้น
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.