Re: [firedrake] Restricting a test function space
Hi Will, Can you provide a bit more context as to what you are attempting to do? It is indeed the case that Dirichlet boundary conditions restrict the test space in that sense (this is often referred to as "lifting" the boundary conditions). However it's not generally possible to lift the component of a vector field normal to the boundary (because this does not directly correspond to a particular set of degrees of freedom), so if you can provide a little more context about the problem, we may be able to provide a suitable alternative. Regards, David On Wed, 17 Feb 2016 at 19:50 William Booker <scwb@leeds.ac.uk> wrote:
Dear all,
If I wanted to restrict a test function space, say $\underline{\Phi} . \underline{n}$ = 0 , would that be covered by including a dirichlet boundary condition for the test function in the solver options?
Regards Will
Dear all, Hopefully this will help provide a bit more context for the problem. Will ________________________________ From: firedrake-bounces@imperial.ac.uk <firedrake-bounces@imperial.ac.uk> on behalf of David Ham <David.Ham@imperial.ac.uk> Sent: 18 February 2016 10:21 To: firedrake Subject: Re: [firedrake] Restricting a test function space Hi Will, Can you provide a bit more context as to what you are attempting to do? It is indeed the case that Dirichlet boundary conditions restrict the test space in that sense (this is often referred to as "lifting" the boundary conditions). However it's not generally possible to lift the component of a vector field normal to the boundary (because this does not directly correspond to a particular set of degrees of freedom), so if you can provide a little more context about the problem, we may be able to provide a suitable alternative. Regards, David On Wed, 17 Feb 2016 at 19:50 William Booker <scwb@leeds.ac.uk<mailto:scwb@leeds.ac.uk>> wrote: Dear all, If I wanted to restrict a test function space, say $\underline{\Phi} . \underline{n}$ = 0 , would that be covered by including a dirichlet boundary condition for the test function in the solver options? Regards Will
On 18/02/16 11:01, William Booker wrote:
Dear all,
Hopefully this will help provide a bit more context for the problem.
OK, so you have a space (L^2)^3 on which you would like to impose u.n=0 on the boundary of the domain. As David says, in general, we can't lift the appropriate boundary nodes because the vector field normal to the boundary does not correspond to particular degrees of freedom. Can you instead enforce your boundary condition weakly, by requiring that \int u.n ds vanishes? In general in fully discontinuous spaces, it makes more sense to impose the boundary conditions weakly rather than strongly (after all, none of the nodes are topologically associated with the boundary anyway). Cheers, Lawrence
Sorry about the late reply. The issue that we require both u.n = 0 and \phi.n =0 , as there are fluxes on both the velocity and the test functions. Both boundary conditions are required to preserve the skew-symmetry of the Poisson bracket. I am currently implementing the velocity boundary in a strong sense, how would I go about implementing it weakly? Will ________________________________________ From: firedrake-bounces@imperial.ac.uk <firedrake-bounces@imperial.ac.uk> on behalf of Lawrence Mitchell <lawrence.mitchell@imperial.ac.uk> Sent: 18 February 2016 11:08 To: firedrake@imperial.ac.uk Subject: Re: [firedrake] Restricting a test function space On 18/02/16 11:01, William Booker wrote:
Dear all,
Hopefully this will help provide a bit more context for the problem.
OK, so you have a space (L^2)^3 on which you would like to impose u.n=0 on the boundary of the domain. As David says, in general, we can't lift the appropriate boundary nodes because the vector field normal to the boundary does not correspond to particular degrees of freedom. Can you instead enforce your boundary condition weakly, by requiring that \int u.n ds vanishes? In general in fully discontinuous spaces, it makes more sense to impose the boundary conditions weakly rather than strongly (after all, none of the nodes are topologically associated with the boundary anyway). Cheers, Lawrence
On 22/02/16 10:56, William Booker wrote:
Sorry about the late reply.
The issue that we require both u.n = 0 and \phi.n =0 , as there are fluxes on both the velocity and the test functions. Both boundary conditions are required to preserve the skew-symmetry of the Poisson bracket.
I am currently implementing the velocity boundary in a strong sense, how would I go about implementing it weakly?
So when you integrated by parts you must have obtained some surface integrals. You use the restrictions on respectively u.n and \phi.n to remove the appropriate terms from those surface integrals I would think. Cheers, Lawrence
strong is not a good idea; won't work for p=0 anyway. ________________________________________ From: firedrake-bounces@imperial.ac.uk <firedrake-bounces@imperial.ac.uk> on behalf of William Booker <scwb@leeds.ac.uk> Sent: Monday, February 22, 2016 10:56 AM To: firedrake@imperial.ac.uk Subject: Re: [firedrake] Restricting a test function space Sorry about the late reply. The issue that we require both u.n = 0 and \phi.n =0 , as there are fluxes on both the velocity and the test functions. Both boundary conditions are required to preserve the skew-symmetry of the Poisson bracket. I am currently implementing the velocity boundary in a strong sense, how would I go about implementing it weakly? Will ________________________________________ From: firedrake-bounces@imperial.ac.uk <firedrake-bounces@imperial.ac.uk> on behalf of Lawrence Mitchell <lawrence.mitchell@imperial.ac.uk> Sent: 18 February 2016 11:08 To: firedrake@imperial.ac.uk Subject: Re: [firedrake] Restricting a test function space On 18/02/16 11:01, William Booker wrote:
Dear all,
Hopefully this will help provide a bit more context for the problem.
OK, so you have a space (L^2)^3 on which you would like to impose u.n=0 on the boundary of the domain. As David says, in general, we can't lift the appropriate boundary nodes because the vector field normal to the boundary does not correspond to particular degrees of freedom. Can you instead enforce your boundary condition weakly, by requiring that \int u.n ds vanishes? In general in fully discontinuous spaces, it makes more sense to impose the boundary conditions weakly rather than strongly (after all, none of the nodes are topologically associated with the boundary anyway). Cheers, Lawrence _______________________________________________ firedrake mailing list firedrake@imperial.ac.uk https://mailman.ic.ac.uk/mailman/listinfo/firedrake
participants (4)
- 
                
                David Ham
- 
                
                Lawrence Mitchell
- 
                
                Onno Bokhove
- 
                
                William Booker