Image_subdomain using uniform mesh refinement

43 views
Skip to first unread message

Shohei Ogawa

unread,
May 25, 2017, 4:18:23 AM5/25/17
to moose-users
Hi all,

 Is it possible to define a sub-domain based on imported image on a generated mesh with uniform refinement?

 As far as I tired, even though I have " uniform_refine = 1" setting in the [Mesh] block, the domain decomposition with ImageSubdomain is resulting in the resolution of the initial grid size (i.e. before the uniform refinement) I am wondering how I could do the subdomain decomposition with refined mesh.

1) Without  "uniform_refine = 1" It looks working well.


2) With "uniform_refine = 1 " The decomposition is done with 2x2 element basis.



Thank you,
Shohei
image_subdomain_refinement.i

Slaughter, Andrew E

unread,
May 25, 2017, 9:40:57 AM5/25/17
to moose...@googlegroups.com
I don't think doing what you need is possible because of the way we do refinement. There needs to be a mapping from the level 0 elements to the level 1, if on level 1 you mark sub-element as subdomain 2, but the others as 1, what do you do on coarsening? Is it subdomain 1 or 2?

--
You received this message because you are subscribed to the Google Groups "moose-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to moose-users+unsubscribe@googlegroups.com.
Visit this group at https://groups.google.com/group/moose-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/moose-users/54182747-a62f-4616-aa0e-faac31eed254%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Cody Permann

unread,
May 25, 2017, 10:12:33 AM5/25/17
to moose...@googlegroups.com
At the point where you want a "dynamic subdomain", don't use a subdomain anymore. Switch over to an elemental aux variable to hold your pseudo-subdomain ID which will work just fine with adaptivity. You can then couple that sux variable into your materials, kernels, and boundary conditions and perform your calculations based on the value of that variable instead. 

On Thu, May 25, 2017 at 7:40 AM Slaughter, Andrew E <andrew.s...@inl.gov> wrote:
I don't think doing what you need is possible because of the way we do refinement. There needs to be a mapping from the level 0 elements to the level 1, if on level 1 you mark sub-element as subdomain 2, but the others as 1, what do you do on coarsening? Is it subdomain 1 or 2?
On Thu, May 25, 2017 at 2:18 AM, Shohei Ogawa <ogawa...@gmail.com> wrote:
Hi all,

 Is it possible to define a sub-domain based on imported image on a generated mesh with uniform refinement?

 As far as I tired, even though I have " uniform_refine = 1" setting in the [Mesh] block, the domain decomposition with ImageSubdomain is resulting in the resolution of the initial grid size (i.e. before the uniform refinement) I am wondering how I could do the subdomain decomposition with refined mesh.

1) Without  "uniform_refine = 1" It looks working well.


2) With "uniform_refine = 1 " The decomposition is done with 2x2 element basis.



Thank you,
Shohei

--
You received this message because you are subscribed to the Google Groups "moose-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to moose-users...@googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "moose-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to moose-users...@googlegroups.com.

Shohei Ogawa

unread,
May 25, 2017, 12:59:12 PM5/25/17
to moose-users
Is it possible with existing features? I am wondering how to get image data, thresholding to create element lists, and giving them back to coupled kernels or material properties. Are those can be done with Aux kernels? Or is it better to do with MaterialProperty?

Thank you,
Shohei 

Cody Permann

unread,
May 25, 2017, 1:14:54 PM5/25/17
to moose...@googlegroups.com
On Thu, May 25, 2017 at 10:59 AM Shohei Ogawa <ogawa...@gmail.com> wrote:
Is it possible with existing features? I am wondering how to get image data, thresholding to create element lists, and giving them back to coupled kernels or material properties.

Don't think about it quite like that. The thresholding is already creating field information for you in terms of setting your initial condition on your "nonlinear" variables, right?. You can use the same image data to set the initial conditions for an element aux variable. You can then couple that variable right back into your kernels. You'll then look at the coupled value (which will be the value for the current element you are on and make a decision about what to do based on that value, i.e. which subdomain am I in). Note, I haven't actually done this myself, but I don't see any obstacles here unless I'm missing something. To get started just add another AuxVariable (elemental) to your simulation and use the same image data to set it's initial condition. You might have to do some rounding to get it to the discrete values you need to represent different domains. Then just visualize it! 
 

Shohei Ogawa

unread,
May 25, 2017, 1:29:34 PM5/25/17
to moose...@googlegroups.com
Thank you very much for the details. I think I am able to start working on that. I didn't know what to start with. Now I will look at "AuxVariable (elemental) "

Shohei 

Shohei Ogawa

To unsubscribe from this group and stop receiving emails from it, send an email to moose-users+unsubscribe@googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "moose-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to moose-users+unsubscribe@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages