Re: [firedrake] Solve a Variational problem in a part of the domain
Well, can you sketch out how you would solve this system, then we can see how to build it. all the best --cjc On 17 August 2015 at 13:33, Anna Kalogirou <a.kalogirou@leeds.ac.uk> wrote:
Yes, obviously I wouldn't be able to write
assemble(u*dx)
for the trial function u, but I just wanted to show you what I have.
Is it too difficult to design such a non-conventional solver?
Thanks,
Anna.
On 17/08/15 13:04, Colin Cotter wrote:
Hi Anna, Not as written, no. I think that we would need to design a bespoke solver for that.
all the best --cjc
On 17 August 2015 at 12:18, Anna Kalogirou <a.kalogirou@leeds.ac.uk> wrote:
Hi all,
I have to solve a problem with the bilinear form similar to the following:
a = ( v*u + dt*inner(grad(u),grad(v)) )*dx + ( v*dt*assemble(u*dx) )*dx
The last term is essentially the product of the integral of u and the integral of test function v. Is it even possible to solve this in Firedrake?
Best,
Anna.
On 14/08/15 15:43, Lawrence Mitchell wrote:
On 14 Aug 2015, at 11:55, Anna Kalogirou <a.kalogirou@leeds.ac.uk> <a.kalogirou@leeds.ac.uk> wrote:
Hi,
I was planning to define the heavyside function as a DG0 function.
Any ideas about solving equation (1b), which contains a time-update for both a function and a scalar?
I haven't been fully following along, but it looks like the formulation in (1f) introduces, effectively, a global coupling. Is that right? Assuming you didn't have any implementation constraints, how would you go about solving this?
Lawrence
_______________________________________________ firedrake mailing listfiredrake@imperial.ac.ukhttps://mailman.ic.ac.uk/mailman/listinfo/firedrake
--
Dr Anna Kalogirou Research Fellow School of Mathematics University of Leeds
-- http://www.imperial.ac.uk/people/colin.cotter
www.cambridge.org/9781107663916
_______________________________________________ firedrake mailing listfiredrake@imperial.ac.ukhttps://mailman.ic.ac.uk/mailman/listinfo/firedrake
--
Dr Anna Kalogirou Research Fellow School of Mathematics University of Leeds
-- http://www.imperial.ac.uk/people/colin.cotter www.cambridge.org/9781107663916
Dear all, I have a very simple, yet not so obvious - to me at least - question: If I define an expression which does not depend on space variables, for example Q_expr = Expression("A*sin(2*pi*F*t)", t=t, A=A, F=F) Q.interpolate(Q_expr) shouldn't this be equivalent to just writing Q as a scalar, Q = A*sin(2*pi*F*t) ? This quantity Q is then used in a weak form to multiply the test function v on a boundary, e.g. Q*v*ds_v(1). I get different results for the two cases. Clearly, in the 1st case Q is a function while in the 2nd case it is a scalar, but I don't see why this would give different results. I might be missing something obvious here... Thank you, Anna.
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 30/09/15 15:19, Anna Kalogirou wrote:
Dear all,
I have a very simple, yet not so obvious - to me at least - question:
If I define an expression which does not depend on space variables, for example
Q_expr = Expression("A*sin(2*pi*F*t)", t=t, A=A, F=F) Q.interpolate(Q_expr)
shouldn't this be equivalent to just writing Q as a scalar,
Q = A*sin(2*pi*F*t) ?
This quantity Q is then used in a weak form to multiply the test function v on a boundary, e.g. Q*v*ds_v(1).
I get different results for the two cases. Clearly, in the 1st case Q is a function while in the 2nd case it is a scalar, but I don't see why this would give different results. I might be missing something obvious here...
These ought to be equivalent. But can you describe how they are different? Lawrence. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQEcBAEBAgAGBQJWC/GPAAoJECOc1kQ8PEYvGncIAM7WI2JkrZ5Y1wZMyJAHNDJG Ca476ZQcNCzKsZ/ntPL9SoXsbXu4Uu2mIVuT4r30VBc/NAEuBdkKppVmiwS3DTsP qzLVP2nRL1ENxYWOUk8pWryE/jffyPP9ny5gHoRLPP/09vL3e4y8jKplw0bmKMgZ UVvcp+kL1hqFujvCddxpym8gg4Y3UrMTdD2MaYJ8WHaFeqB9ZPNWomv24ZKKWhHU HAms5sgsNedvdrgIY32AH2AARRysk4AsLsfjYymsiXPrOyPrlG5V2Muf4gKdqID1 MRWiL7p6ZVxLnOytF4NtFRUItYLKcOrv487IIIHVfl+TVvmKO+IJpXDyx5wyZcY= =EkO8 -----END PGP SIGNATURE-----
The solution behaves as expected when I define Q as a function, but in the other case there seems to be some kind of instability and I get a very strange result. Anna. On 30/09/15 15:28, Lawrence Mitchell wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
On 30/09/15 15:19, Anna Kalogirou wrote:
Dear all,
I have a very simple, yet not so obvious - to me at least - question:
If I define an expression which does not depend on space variables, for example
Q_expr = Expression("A*sin(2*pi*F*t)", t=t, A=A, F=F) Q.interpolate(Q_expr)
shouldn't this be equivalent to just writing Q as a scalar,
Q = A*sin(2*pi*F*t) ?
This quantity Q is then used in a weak form to multiply the test function v on a boundary, e.g. Q*v*ds_v(1).
I get different results for the two cases. Clearly, in the 1st case Q is a function while in the 2nd case it is a scalar, but I don't see why this would give different results. I might be missing something obvious here... These ought to be equivalent. But can you describe how they are different?
Lawrence.
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1
iQEcBAEBAgAGBQJWC/GPAAoJECOc1kQ8PEYvGncIAM7WI2JkrZ5Y1wZMyJAHNDJG Ca476ZQcNCzKsZ/ntPL9SoXsbXu4Uu2mIVuT4r30VBc/NAEuBdkKppVmiwS3DTsP qzLVP2nRL1ENxYWOUk8pWryE/jffyPP9ny5gHoRLPP/09vL3e4y8jKplw0bmKMgZ UVvcp+kL1hqFujvCddxpym8gg4Y3UrMTdD2MaYJ8WHaFeqB9ZPNWomv24ZKKWhHU HAms5sgsNedvdrgIY32AH2AARRysk4AsLsfjYymsiXPrOyPrlG5V2Muf4gKdqID1 MRWiL7p6ZVxLnOytF4NtFRUItYLKcOrv487IIIHVfl+TVvmKO+IJpXDyx5wyZcY= =EkO8 -----END PGP SIGNATURE-----
_______________________________________________ firedrake mailing list firedrake@imperial.ac.uk https://mailman.ic.ac.uk/mailman/listinfo/firedrake
-- Dr Anna Kalogirou Research Fellow School of Mathematics University of Leeds http://www1.maths.leeds.ac.uk/~matak/
participants (3)
- 
                
                Anna Kalogirou
- 
                
                Colin Cotter
- 
                
                Lawrence Mitchell