did not get your answer because I get firedrake digest only? (re: mesh coordinates and boundaries questions)
David -- *After* I wrote my latest to the firedrake mailing list I found your answer at the archive: http://mailman.ic.ac.uk/pipermail/firedrake/2018-May/003406.html I did not get it before. (Its not in my spam or trash.) Probably because I get only the digest version of the mailing list? Or is there a need to CC me in addition to sending to the list? Not sure what are best practices to avoid crossing this way. Sorry! Regarding the content of your answer: 1) I still don't know how to use the subdomain id to get anything other than the *measure* for the boundary, e.g. "ds(id)". How do I get an indicator function, for example? This is what I am missing as "idiom". 2) How does interpolate work if I have data only locally on the boundary, and not as an analytical function of x, and the data only lives on the process that holds its part of the boundary? That is, I have "values of w(x)" on the boundary (as stated) but not a formula in x (i.e. the "expression" needed for interpolate). Said a different way, the last sentence at https://www.firedrakeproject.org/interpolation.html#id2 namely "This will also work in parallel, as the interpolation will occur on each process,...", can't possibly be true in the situation where values w(x), for x in some range, are only known to the process which holds that part of the boundary (i.e. for x in that range). I think all-to-all communication is needed to answer my question in general. Said yet another way, in the general setting I think that constructing the "mydata(X)" described in same the firedrake doc would require setting up an entire VecScatter or solve() anyway. I think both of your answers assume I have a formula in terms of x. I don't in the application which drove my questions. Thanks, and sorry for the fumble, Ed -- Ed Bueler Dept of Math and Stat and Geophysical Institute University of Alaska Fairbanks Fairbanks, AK 99775-6660 301C Chapman
Hi Ed, I think my latest missive missed 2 below. You are right. The mechanism we provide will ask for data on each process. If your data is also distributed then that won’t necessarily be the same process you have data on. I think you just have to manage the communication in that case. It’s not clear to me how we could fix that one. Regards, David From: Ed Bueler <elbueler@alaska.edu> Date: Saturday, 12 May 2018 at 02:15 To: "Ham, David A" <david.ham@imperial.ac.uk>, firedrake <firedrake@imperial.ac.uk> Subject: did not get your answer because I get firedrake digest only? (re: mesh coordinates and boundaries questions) David -- *After* I wrote my latest to the firedrake mailing list I found your answer at the archive: http://mailman.ic.ac.uk/pipermail/firedrake/2018-May/003406.html I did not get it before. (Its not in my spam or trash.) Probably because I get only the digest version of the mailing list? Or is there a need to CC me in addition to sending to the list? Not sure what are best practices to avoid crossing this way. Sorry! Regarding the content of your answer: 1) I still don't know how to use the subdomain id to get anything other than the *measure* for the boundary, e.g. "ds(id)". How do I get an indicator function, for example? This is what I am missing as "idiom". 2) How does interpolate work if I have data only locally on the boundary, and not as an analytical function of x, and the data only lives on the process that holds its part of the boundary? That is, I have "values of w(x)" on the boundary (as stated) but not a formula in x (i.e. the "expression" needed for interpolate). Said a different way, the last sentence at https://www.firedrakeproject.org/interpolation.html#id2 namely "This will also work in parallel, as the interpolation will occur on each process,...", can't possibly be true in the situation where values w(x), for x in some range, are only known to the process which holds that part of the boundary (i.e. for x in that range). I think all-to-all communication is needed to answer my question in general. Said yet another way, in the general setting I think that constructing the "mydata(X)" described in same the firedrake doc would require setting up an entire VecScatter or solve() anyway. I think both of your answers assume I have a formula in terms of x. I don't in the application which drove my questions. Thanks, and sorry for the fumble, Ed -- Ed Bueler Dept of Math and Stat and Geophysical Institute University of Alaska Fairbanks Fairbanks, AK 99775-6660 301C Chapman
participants (2)
- 
                
                Ed Bueler
- 
                
                Ham, David A