From aa739235e697da672e44db489e33235c203dc8b9 Mon Sep 17 00:00:00 2001 From: Petr Krysl Date: Wed, 3 Jan 2024 15:22:44 -0800 Subject: [PATCH] update test for statics --- .../shells/statics/vis_scordelis_lo_examples.jl | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/examples/shells/statics/vis_scordelis_lo_examples.jl b/examples/shells/statics/vis_scordelis_lo_examples.jl index 02e6850..d6094da 100644 --- a/examples/shells/statics/vis_scordelis_lo_examples.jl +++ b/examples/shells/statics/vis_scordelis_lo_examples.jl @@ -38,7 +38,7 @@ thickness = 0.25; # geometrical dimensions are in feet R = 25.0; L = 50.0; -cylindrical!(csmatout::FFltMat, XYZ::FFltMat, tangents::FFltMat, fe_label::FInt) = begin +cylindrical!(csmatout, XYZ, tangents, feid, qpid) = begin r = vec(XYZ); r[2] = 0.0; r[3] += R csmatout[:, 3] .= vec(r)/norm(vec(r)) csmatout[:, 2] .= (0.0, 1.0, 0.0) # this is along the axis @@ -47,8 +47,6 @@ cylindrical!(csmatout::FFltMat, XYZ::FFltMat, tangents::FFltMat, fe_label::FInt) end function _execute_dsg_model(formul, n = 8, visualize = true) - - tolerance = R/n/10 # fens, fes = T3blockrand(40/360*2*pi,L/2,n,n); fens, fes = T3block(40/360*2*pi,L/2,n,n,:b); @@ -101,15 +99,18 @@ function _execute_dsg_model(formul, n = 8, visualize = true) applyebc!(dchi) numberdofs!(dchi); + massem = SysmatAssemblerFFBlock(nfreedofs(dchi)) + vassem = SysvecAssemblerFBlock(nfreedofs(dchi)) + # Assemble the system matrix associategeometry!(femm, geom0) - K = stiffness(femm, geom0, u0, Rfield0, dchi); + K = stiffness(femm, massem, geom0, u0, Rfield0, dchi); # Midpoint of the free edge nl = selectnode(fens; box = Float64[sin(40/360*2*pi)*25 sin(40/360*2*pi)*25 L/2 L/2 -Inf Inf], inflate = tolerance) lfemm = FEMMBase(IntegDomain(fes, TriRule(3))) - fi = ForceIntensity(FFlt[0, 0, -90, 0, 0, 0]); - F = distribloads(lfemm, geom0, dchi, fi, 3); + fi = ForceIntensity(Float64[0, 0, -90, 0, 0, 0]); + F = distribloads(lfemm, vassem, geom0, dchi, fi, 3); # Solve U = K\F