Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Implement new type for more flexible mapping of degrees of freedom #25

Open
wants to merge 8 commits into
base: master
Choose a base branch
from

Conversation

ahojukka5
Copy link
Member

Currently, the location of degrees of freedom in matrix level is implemented somewhat naive way, given maximum number of degrees of freedom max_dim, node id j, and index of dof i, we have gdofs(j,i) = max_dim(j-1)+i. This works, but does not support variable number of degrees of freedom per node, which is mandatory if we want to couple structural elements with continuum elements or have, for instance, pressure degree of freedom in some nodes and in some nodes not. This PR implements new type DOFMap which makes it easy to create more complex configurations of degrees of freedom.

@coveralls
Copy link

coveralls commented Jun 20, 2018

Coverage Status

Coverage decreased (-0.6%) to 99.444% when pulling 7f8a9b5 on dofmap into 2dba599 on master.

It's better to implement three different kind of DOFMaps. This is the 
first one and should be compatible with the curren definition. We can 
then later on extend to FixedDOFMap where we can effectively make a 
bandwidth-minimizing permutation ourself and later on VariableDOFMap so 
that each node can have different number of dofs.
Also, losen data type definitions in `add!` so that generators works 
also when adding data do sparse matricse.
@ahojukka5 ahojukka5 force-pushed the master branch 2 times, most recently from a711587 to bcb4840 Compare December 13, 2019 09:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants