lijas

Results 42 comments of lijas

Hi! For fun, I tried digging in to the GMRES solver a bit to try to make it compatible `BlockArrays`. One thing i did was to change the initialization of...

Ahh, it makes sense to not use `similar(b)` for sparse arrays. And `BlockMatrix`*`DenseVector` can probably be made efficient, so no need to have BlockVectors in the workspace.

This gives reasonable results for a 2x2 block system of sparse matrices: ``` function LinearAlgebra.mul!(C::AbstractVector, A::BlockMatrix, B::AbstractVector)#, α::Number, β::Number) n,m = blocksizes(A) LinearAlgebra.mul!(view(C, 1:n[1]), A[Block(1,1)], view(B, 1:m[1]), 1.0, 0.0) #...

Move the face integration outside the cell loop and do: ``` for (cellid, faceid) in union(getfaceset(grid, "left"), getfaceset(grid, "right") ) ``` is my prefered way :)

KrylovJL_CG works. I will ditch IterativeSolvers and just use Krylov from now on.

What if you have bcs that need different input parameters?, then this wont work i guess? I would prefer some sort of grouping instead ``` add!(ch, Dirichlet(...), :static_dbc) add!(ch, Dirichlet(...),...

This approach requires less modifications so I am ok with it. But it feels "wrong"/like a design flaw that all bcs get a bunch parameters they dont need.

I did some changes to CellIterator a while back, but I did not add tests etc. Since It was me who broke it, I can see if I can fix...

I dont think CellIndex is used anywhere in ferrite, and one reason to not use it is because then you cant do stuff like cellid + 10 (though, I dont...

In some literatures i have seen the terms `gather!(ue, u, idxs)` and `scatter!(assembler, Ke, fe, idxs)`, been used. Don't know if I like them though :P