From: Viviana P. B. <vpa...@uc...> - 2018-01-05 15:39:42
|
Hi John, Thank you for the clarification, it's really helpful. My assembly function is separated, one for the matrix and another one for the rhs. I loop over the elements of each subdomain to avoid the if statement. Best, Viviana. Viviana Palacio Betancur PhD Student | 2016 Cohort de Pablo Group Institute for Molecular Engineering University of Chicago On Thu, Jan 4, 2018 at 12:10 PM, John Peterson <jwp...@gm...> wrote: > > > On Thu, Jan 4, 2018 at 9:16 AM, Viviana Palacio Betancur < > vpa...@uc...> wrote: > >> Hello, >> >> I am solving a system on a mesh with two subdomains: bulk with elements >> TET10, and surface with elements TRI6. So far, I've sucessfully asembled >> the system's matrix and rhs, and initialized the system. >> >> My problem is when I execute system.solve(). Apparently, the solution is >> only done for the bulk subdomain and thus the surface solution is almost >> 0. >> Is the default setting to solve only for the first subdomain? Should I be >> using the system.restrict_solve_to? >> > > > All variables (even subdomain restricted variables, if you are using > those) in the System are solved for simultaneously. > > Do you have an if-statement in your assembly function that assembles > different PDE terms depending on what subdomain you are currently on? How > is your boundary subdomain actually coupled to the volume? > > -- > John > |