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

Handle prescribed dofs in RHS of affine constraints #535

Merged
merged 1 commit into from
Nov 9, 2022

Commits on Nov 9, 2022

  1. Handle prescribed dofs in RHS of affine constraints

    This patch fixes affine constraints with prescribed dofs in the RHS. In
    particular, we allow dofs that are prescribed by just an inhomogeneity
    (i.e. DBC) but disallow "nesting" affine constraints.
    
    Concretely, consider e.g. the following two constraints:
    
        u2 = f(t)
        u3 = u2 + b3
    
    Before this patch this was not handled correctly since the inhomogeneity
    for u3 was taken as b3, but it should really be b3 + f(t) by
    substituting u2 for f(t). Since we allow for time-dependent
    inhomogeneities this substitution can not be done in
    close!(::ConstraintHandler) and instead the effective inhomogeneity is
    computed in update!.
    
    Nested constraints, e.g.
    
        u2 = u3
        u3 = u5
    
    are still not allowed but in the future this can be resolved in
    close!(::ConstraintHandler) to
    
        u2 = u5
        u3 = u5
    
    However, this patch checks for such nesting and raises an error instead
    of resulting in incorrect answers as is the case before.
    
    Fixes #530.
    fredrikekre committed Nov 9, 2022
    Configuration menu
    Copy the full SHA
    d68f9a1 View commit details
    Browse the repository at this point in the history