Interactive tool · Finite element method
2D Plane Stress FEM Explorer
About this tool
Solve three classic plane stress benchmarks with four element types, then compare the stresses and deflections with the exact solutions. See shear locking, stress averaging, mesh distortion and convergence rates for yourself.
Alatan interaktif · Finite element method
2D Plane Stress FEM Explorer
Tentang alatan ini
Selesaikan tiga benchmark plane stress klasik dengan empat jenis element, kemudian bandingkan tegasan dan pesongan dengan exact solution. Lihat sendiri shear locking, purata tegasan, herotan mesh dan kadar convergence.
Loading the interactive tool…Memuatkan alatan interaktif…
How the solver works
The principle of virtual work turns plane stress elasticity into a linear system K u = f, assembled element by element:
- T3 (constant strain triangle): linear displacement, one strain state per element.
- Q4 (bilinear quadrilateral, 2 × 2 Gauss points): it cannot represent pure bending without spurious shear strain, so it locks in bending.
- QM6: Q4 plus the incompatible modes 1 − ξ² and 1 − η², condensed out at element level. Taylor’s correction makes it pass the patch test on distorted meshes. On rectangles it bends almost exactly.
- Q8 (serendipity quadrilateral, 3 × 3 Gauss points): quadratic displacement with curved edges, so the hole boundary is followed closely.
The equations are solved with a skyline L D LT factorisation, the method used in most classic FE textbooks. Nodes are numbered along the shorter side of the mesh to keep the profile narrow, and prescribed displacements are moved to the right-hand side.
Stresses are computed at the Gauss points and extrapolated to the nodes. Raw shows each element’s own field, so the jumps between elements reveal the discretisation error. Averaged takes the mean at each node, as most commercial codes do by default. The error is measured in the energy norm,
It uses the raw finite element stresses, 4 × 4 Gauss points per quadrilateral and 7 points per triangle. Material: E = 200 GPa, thickness t = 10 mm.
The three benchmarks
Cantilever with end shear. L = 2 m, depth D = L / (L/D), and P = 20 kN applied as a parabolic shear traction at x = L. Timoshenko and Goodier’s exact solution, with I = tD³/12, is
The exact support prescribes the exact displacements at x = 0, so the finite element solution converges to it. The clamped support fixes every node there; the exact solution then no longer applies, and the corners become stress singularities.
Plate with a circular hole. A quarter of a 2 m × 2 m plate with hole radius a under σ0 = 100 MPa, with symmetry rollers on x = 0 and y = 0. Kirsch’s solution for an infinite plate gives σθθ(a, θ) = σ0 (1 − 2 cos 2θ), so the stress concentration factor is 3 at the top of the hole. Applying Kirsch’s tractions on the outer edges makes the quarter plate an exact benchmark; uniform tension models a real finite plate instead.
Patch test. A unit square under uniform tension on a distorted mesh. Any element that converges must reproduce this constant stress state exactly; it is the practical form of the consistency requirement.
Things to try
- Cantilever, one element through the depth. Read the tip deflection for T3, Q4, QM6 and Q8. Then increase the mesh density for Q4 and watch it approach the exact value slowly.
- Run the convergence study on the cantilever. T3, Q4 and QM6 fall with slope −1/2 (error ∝ h), Q8 with slope −1 (error ∝ h²). QM6 starts far lower but converges at the same rate as Q4.
- Choose Q4 on a coarse mesh and switch the stresses from Averaged to Raw. The jumps between elements are the error that averaging hides. Look at τxy through the depth as well.
- Add distortion of 0.3 to the cantilever and compare QM6 with Q8. QM6 loses much of its bending advantage on distorted elements, while Q8 barely changes.
- Plate with a hole, Q4: refine from 2 to 16 and follow the stress concentration factor towards 3. Plot σθθ around the hole, where compression appears at θ = 0.
- Switch the outer edges to uniform tension and enlarge the hole. The stress concentration rises well above Kirsch’s value of 3: this is the finite-width effect.
- Clamp the cantilever and refine. The maximum von Mises stress keeps rising at the corners instead of converging, which is the signature of a stress singularity.
- Run the patch test with each element and press “New layout” a few times. Every element passes to machine precision.
Bagaimana solver berfungsi
Prinsip kerja maya menukar keanjalan plane stress kepada sistem linear K u = f, yang dipasang element demi element:
- T3 (constant strain triangle): sesaran linear, satu keadaan terikan bagi setiap element.
- Q4 (sisi empat bilinear, 2 × 2 Gauss points): ia tidak boleh mewakili lenturan tulen tanpa terikan ricih palsu, jadi ia mengalami locking dalam lenturan.
- QM6: Q4 ditambah incompatible modes 1 − ξ² dan 1 − η², yang dikondensasi pada aras element. Pembetulan Taylor membolehkannya lulus patch test pada mesh terherot. Pada segi empat tepat ia melentur hampir tepat.
- Q8 (sisi empat serendipity, 3 × 3 Gauss points): sesaran kuadratik dengan sisi melengkung, jadi sempadan lubang diikuti dengan rapat.
Persamaan diselesaikan dengan pemfaktoran skyline L D LT, kaedah yang digunakan dalam kebanyakan buku teks FE klasik. Nod dinomborkan sepanjang sisi mesh yang lebih pendek supaya profil kekal sempit, dan sesaran yang ditetapkan dipindahkan ke sebelah kanan persamaan.
Tegasan dikira pada Gauss points dan diekstrapolasi ke nod. Mentah memaparkan medan setiap element itu sendiri, jadi lompatan antara element mendedahkan ralat discretisation. Purata mengambil min pada setiap nod, seperti kebanyakan perisian komersial secara lalai. Ralat diukur dalam energy norm,
Ia menggunakan tegasan finite element mentah, 4 × 4 Gauss points bagi setiap sisi empat dan 7 titik bagi setiap segi tiga. Bahan: E = 200 GPa, ketebalan t = 10 mm.
Tiga benchmark
Cantilever dengan ricih hujung. L = 2 m, kedalaman D = L / (L/D), dan P = 20 kN dikenakan sebagai traction ricih parabola pada x = L. Exact solution Timoshenko dan Goodier, dengan I = tD³/12, ialah
Support exact menetapkan sesaran exact pada x = 0, jadi penyelesaian finite element menumpu kepadanya. Support clamped menetapkan setiap nod di situ; exact solution tidak lagi terpakai, dan sudut-sudutnya menjadi stress singularity.
Plat dengan lubang bulat. Satu perempat daripada plat 2 m × 2 m dengan jejari lubang a di bawah σ0 = 100 MPa, dengan roller simetri pada x = 0 dan y = 0. Penyelesaian Kirsch bagi plat tak terhingga memberi σθθ(a, θ) = σ0 (1 − 2 cos 2θ), jadi faktor kepekatan tegasan ialah 3 di puncak lubang. Mengenakan traction Kirsch pada sisi luar menjadikan plat suku ini benchmark exact; tegangan seragam pula memodelkan plat terhingga sebenar.
Patch test. Segi empat sama unit di bawah tegangan seragam pada mesh terherot. Mana-mana element yang menumpu mesti menghasilkan semula keadaan tegasan malar ini dengan tepat; inilah bentuk praktikal syarat consistency.
Cubaan untuk anda
- Cantilever, satu element merentas kedalaman. Baca pesongan hujung bagi T3, Q4, QM6 dan Q8. Kemudian naikkan ketumpatan mesh bagi Q4 dan lihat ia menghampiri nilai exact dengan perlahan.
- Jalankan kajian convergence pada cantilever. T3, Q4 dan QM6 jatuh dengan cerun −1/2 (ralat ∝ h), Q8 dengan cerun −1 (ralat ∝ h²). QM6 bermula jauh lebih rendah tetapi menumpu pada kadar yang sama dengan Q4.
- Pilih Q4 pada mesh kasar dan tukar tegasan dari Purata ke Mentah. Lompatan antara element ialah ralat yang disembunyikan oleh purata. Lihat juga τxy merentas kedalaman.
- Tambah herotan 0.3 pada cantilever dan bandingkan QM6 dengan Q8. QM6 kehilangan sebahagian besar kelebihan lenturannya pada element terherot, manakala Q8 hampir tidak berubah.
- Plat berlubang, Q4: haluskan dari 2 ke 16 dan ikuti faktor kepekatan tegasan menghampiri 3. Plotkan σθθ sekeliling lubang, di mana mampatan muncul pada θ = 0.
- Tukar sisi luar ke tegangan seragam dan besarkan lubang. Kepekatan tegasan naik jauh melebihi nilai Kirsch iaitu 3: inilah kesan lebar terhingga.
- Clamp cantilever dan haluskan mesh. Tegasan von Mises maksimum terus meningkat di sudut dan tidak menumpu, iaitu tanda stress singularity.
- Jalankan patch test dengan setiap element dan tekan “Susunan baharu” beberapa kali. Setiap element lulus pada ketepatan mesin.
Related reading
Book
Notes
Runs entirely in your browser; nothing is sent anywhere. Source code: github.com/RazinUTM/rz-tools. Spotted a bug or have an idea for a tool? Email arazin@utm.my.
Bacaan berkaitan
Buku
Nota
Berjalan sepenuhnya dalam pelayar anda; tiada data dihantar ke mana-mana. Kod sumber: github.com/RazinUTM/rz-tools. Jumpa pepijat atau ada idea untuk alatan baharu? E-mel arazin@utm.my.
Recent Comments