From: John P. <jwp...@gm...> - 2018-07-03 14:26:19
|
On Tue, Jul 3, 2018 at 8:16 AM, Bailey Curzadd <bcu...@gm...> wrote: > Hi John, > > Thanks for the advice. I looked into the alternatives you suggested, but > discretizing the LMs as a field variable unfortunately causes me more > headaches than it solves, so I’ve switched to the penalty method for now. I > do have one suggestion to improve DofMap that should be relatively easy to > implement. Since the MPCs are a recent addition to my code, I assembled the > constraint equations separately from the stiffness section of the system > matrix to avoid major changes to existing code. In doing so, I had to > change the stiffness assembly to manually separate displacement DOFs from > LM DOFs since, currently, the DofMap interface only allows requesting > element/nodal DOFs for a single variable or all of them at once. I think it > would be useful to have something like > > dof_indices(const Elem *const elem, std::vector< dof_id_type > &di, > std::vector<const unsigned int> &vns) > > in order to select the DOFs associated with a reduced list of variables. > Hmm, yes, this seems like a reasonable extension to the existing dof_indices() interfaces. I don't have time to work on it at the moment, but feel free to open a GitHub Issue for this so it stays on our radar. -- John |