โปรเจ็กต์นี้แก้ปัญหาความยืดหยุ่นเชิงเส้นโดยใช้ PETSc ในรูปแบบ 2 มิติและ 3 มิติสำหรับค่าสัมประสิทธิ์ lamé ซึ่งจะคงที่หรือคงที่โดยเซลล์บนตารางคาร์ทีเซียนโดยใช้อัลกอริทึม GenEO ที่อธิบายไว้ใน https://hal.archives-ouvertes.fr/hal-01170059/document .
หากต้องการติดตั้งแพ็คเกจนี้ คุณต้องติดตั้งอนาคอนดาก่อน หากคุณไม่มีอนาคอนดาในระบบ คุณสามารถดาวน์โหลด miniconda สำหรับ Python 3 (https://conda.io/miniconda.html)
หากต้องการติดตั้งโปรเจ็กต์นี้ คุณจะต้องโคลนโปรเจ็กต์นี้
git clone https://github.com/gouarin/GenEO.git
cd GenEO
ต่อไป เราจะสร้างสภาพแวดล้อมพร้อมแพ็คเกจที่จำเป็นทั้งหมดโดยใช้คำสั่งต่อไปนี้
conda env create -f environment.yml
เพื่อเปิดใช้งานสภาพแวดล้อมของคุณ
source activate petsc-geneo
แล้ว
python setup.py install
ในไดเร็กทอรีของโปรเจ็กต์นี้ คุณจะมีไดเร็กทอรี demos
พร้อมตัวอย่าง 2d และ 3d
สิ่งสำคัญคือต้องอยู่ในสภาพแวดล้อม conda ที่สร้างขึ้นก่อนหน้านี้ หากไม่เป็นเช่นนั้น
source activate petsc-geneo
นี่คือตัวอย่างวิธีทดสอบหนึ่งในนั้น
mpiexec -np 4 python demo_elasticity_2d.py -AMPCG_verbose -ksp_monitor -PCBNN_verbose
หากการดำเนินการ demo_elasticity_2d.py
สำเร็จ คุณควรมีชื่อไฟล์ 'solution_2d_asm.vts'
หากต้องการแสดงภาพไฟล์นี้ คุณต้องติดตั้ง paraview (https://www.paraview.org/download/)
paraview
และเลือกไฟล์ -> สถานะโหลดparaview
ของโปรเจ็กต์นี้ชื่อ visu_2d.pvsm
vts
คุณควรจะเห็นผล