|
Administrator
|
Regarding Matlab coder/parallel toolbox, unfortunately never had much success using Matlab coder or parallel toolbox to speed up FEA or CFD codes. Possibly Matlab coder could work if the CPU time spent in the basic Matlab loops/code (not library calls). However, if it spends time in the linear solver it could get worse as if I recall Matlab internally uses Umfpack/Suitesparse for backslash, but I don't think it was licensed for distributing with coder so they use a very basic linear solver (if it hasn't changed now).
Have you checked with the profiler what takes time in your implementation? Fenics uses PetSc which indeed is a very good linear solver, but I don't think there is a Matlab interface yet. Both Mumps and Paradiso include Mex interfaces (if you just want to try you can grab the compiled mumps.mex, rename to zip and unzip, or install the toolbox in Matlab and add path to the internal "/lib/mumps" folder).
If the time is spent more in matrix assembly, you could try using the Redbkit FSI library which includes C++ mex assembly functions for basic Navier-Stokes matrices.
|