Thanks for the update, looks good!
On Thu, 2016-06-09 at 23:18, Jukka Aho <ahojuk...@gmail.com> wrote: > Hi, > > JuliaFEM developer here. > > About performance. I recently measured FEM problem assembly time vs. solver > time to find out the performance of JuliaFEM. Point was to find out when > assembly time is less than time used to solve Ax=b which is done in FORTRAN > and nothing can be done for that by me. I solved a displacement for 3d > piston model[1] with different meshes up to size 282035 nodes, > approximately 1 million dofs. Here's the results: > > nnodes nels cholmod total aster > 4801 4503 0.37 2.00 1.83 > 9602 8801 0.75 3.85 3.08 > 21752 19408 2.02 9.30 8.67 > 29904 26237 2.79 13.09 12.03 > 53007 45060 6.23 25.69 28.26 > 65622 55429 8.29 32.80 42.15 > 74547 62876 8.81 36.69 48.92 > 89630 74777 13.50 50.49 71.83 > 110515 91068 21.01 75.01 107.85 > 145521 118138 41.58 125.31 191.23 > 178261 143849 56.19 166.12 283.90 > 212365 170801 76.75 206.91 481.30 > 244032 196436 112.12 270.06 557.24 > 282035 227333 150.56 332.14 811.62 > > Assembly isn't optimized anyway but even with this performance it can be > seen that solving Ax=b takes about same amount of time than assembly when > there's about 1 million dofs in model. I hope that bigger models can be > solved effectively using PETSc.jl in future. For now I use simply x = A \ b > but it gets impractical with bigger models because of it's memory usage. > These models are solved using my 5 years old PC so it's already possible to > solve 1M dof problems with JuliaFEM in a reasonable time. > > Currently it's possible to solve heat/Poisson problems and linear/nonlinear > elasticity problems in 2d and 3d. I've started to write blog posts about > developing and using JuliaFEM under category juliafem[2], so the current > status of the project can be followed from there and also from project web > site[7], but it's quite unfinished at the moment. I have not yet written > about developing own "problems" (expect that to be next post about > developing JuliaFEM) but it has been made very simple. A standard poisson > assembly procedure is only 30 lines of code and it's quite self > explaining[3]. An example how to build FEM models from scratch can be found > from tests[4]. I have written a script to read mesh from Code Aster med > file to construct bigger and more realistic models using SALOME. A better > example of solving Poisson problem in 3d can be found from [5]. Results can > be saved to Xdmf file format and visualized using Paraview [6]. > > Br, > Jukka > > [1] http://ahojukka5.github.io/images/piston_displacement_results.png > [2] http://ahojukka5.github.io/categories/juliafem/ > [3] https://github.com/JuliaFEM/JuliaFEM.jl/blob/master/src/heat.jl > [4] https://github.com/JuliaFEM/JuliaFEM.jl/blob/master/test/test_heat.jl > [5] http://ahojukka5.github.io/files/juliafem_examples/heat.jl > [6] http://ahojukka5.github.io/images/juliafem_logo_heat_results.png > [7] http://juliafem.org/ > > keskiviikko 8. kesäkuuta 2016 11.11.04 UTC+3 CrocoDuck O'Ducks kirjoitti: >> >> Hi There! >> >> I am involved into some multiphysics FEM problems I solve with ElmerFEM >> <https://www.csc.fi/web/elmer>. Seems to me that everything being >> maintained is pretty much gravitating around JuliaFEM >> <https://github.com/JuliaFEM/JuliaFEM.jl> and ElipticFEM >> <https://github.com/gerhardtulzer/EllipticFEM.jl>. Any of you guys doing >> some FEM with Julia? If so, what do you use? >>