>> I was juist thinking about the dof indexing too... >> >> What about adding a system for each mg level? > > Oh, you don't mean adding a System, you mean adding a system index to > each DofObject. That would certainly make space for the indexing, and > it would probably make the indexing process doable with very little > change to existing DofMap code.
Sadly, I *did* mean a system, but you've converged to a much better solution IMO. >> That solves the indexing... But we need a mechanism for telling the >> associated dof maps to operate on a specified 'view' of the mesh. > > That's what subactive() is for. The DofMap operates on the active > elements *already*. >> Deteting hanging nodes on the sublevels will take some work... > > We'd basically have to rerun find_neighbors for each level (and then > again at the fine level to put them back in place). Ah... right again. Right now find_neighbors() blows away all neighbor information at the beginning, but I am about to change that for another reason... (finishing the nemesis stuff). The only other thought that came to mind was on the issue of storing the restriction/prolongation operators and associated memory overhead. For single-valued systems it could easily ~double the total memory, provided you store the same type of matrix at all levels. If you have multiple unknowns, though, you might be able to do a lot better. For compressible flows where we've got 2+NDIM unknowns, all approximated in the same space, I'd think storing a single 'prototypical' restriction/prolongation operator would work for all the unknowns, iteratively. In my case that would cut the size of the sparse matrix at any given level by (2+DIM)^2. Even using Taylor-hood elements with incompressible flows you might be able to do something clever - like store a single quadratic operator and do something special to project the linear pressure using it (?) -Ben ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ Libmesh-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/libmesh-users
