Re-adding the list.

MUKKUND SUNJII <[email protected]> writes:

> Apologies, I understand your point about the non-wall domain. 
>
> However, I am interested in what is happening on the other side of the dam 
> (the reservoir). 
>
> Furthermore, I suppose in the non-wall domain, the boundary condition would 
> change with respect to the height of the water in the reservoir.

Oh, you want this to be a wall that water can slosh over?  I'd recommend
using a formulation with variable bathymetry and looking at
well-balanced schemes.  Also read up on Riemann solvers capable of
wetting and drying.  I wouldn't treat it as a "boundary".

> Regards, 
>
> Mukkund
>
>> On 8 Jun 2020, at 22:05, MUKKUND SUNJII <[email protected]> wrote:
>> 
>> I am not familiar with the non-wall domain. 
>> 
>> Would you be kind enough to direct me to an tutorial or a test file in the 
>> repo?
>> 
>> Regards, 
>> 
>> Mukkund 
>> 
>>> On 8 Jun 2020, at 22:02, Jed Brown <[email protected]> wrote:
>>> 
>>> MUKKUND SUNJII <[email protected]> writes:
>>> 
>>>> Greetings, 
>>>> 
>>>> I am working on modifying the shallow water model in ex11 for the purpose 
>>>> of my thesis. 
>>>> 
>>>> I wish to run a specific dam break scenario using this model. In the 
>>>> scenario, the velocity fields of certain cells must be constrained. That 
>>>> is I want to create an “artificial wall” inside the domain by constraining 
>>>> the value [uh] to not change. 
>>> 
>>> Why not make your unstructured mesh be the non-wall domain?  That way
>>> you don't have to constrain cell values and you can (correctly) make the
>>> (reconstructed) zero velocity occur at the cell boundary rather than the
>>> cell interior.
>>> 
>>>> For this purpose, I tried creating a separate label in the DM. Further, I 
>>>> added the cells whose velocity values I wanted to constrain to the label 
>>>> using the routine :  DMLabelSetValue(labelWall, c, 100);
>>>> 
>>>> Next, in the routine where the boundary conditions are set, I pass a 
>>>> separate command :
>>>> 
>>>> PetscDSAddBoundary(prob, DM_BC_ESSENTIAL, "wall", "DamWall", 0, 1, &comp, 
>>>> (void (*)(void)) PhysicsBoundary_Dam_Wall, sizeof(damWallids), 
>>>> &damWallids, phys);
>>>> 
>>>> Ofcourse, in the function PhysicsBoundary_Dam_Wall() I set the vector 
>>>> value of [uh] to 0. When I do run the program, I do not see any of this in 
>>>> play (i.e., the values are not being constrained). 
>>>> 
>>>> Is there a smarter way to go about this or would you suggest a correction 
>>>> in my current method?
>>>> 
>>>> Thank you in advance for your wonderful suggestions and work!
>>>> 
>>>> Regards, 
>>>> 
>>>> Mukkund Sunjii 
>> 

Reply via email to