I am trying to implement a simple finite volume method solver. I had a class on FVM a while back, but am still aware of the principal concepts. But implementing the FVM for non-cartesian or 1D meshes is not straightforward to me. E.g. I have a mesh representing my control volumes. I compute the cell centroids to be used as my DOF later on. How would I compute the connectivity between cell centroids? I can compute this by searching for cells that share a cell surface, but this is very naive and hence computationally very inefficient. Further, I just don't see sophisticated softwares doing so. I am looking for anything that might help me understand some of the tricks involved in implementing a FVM solver efficiently! Things that are not directly involved with the underlying mathematical/numerical schemes, but rather the set-up.
Finite Volume Implementation
finite volume;mesh generation;numpy