[Users] boundary conditions with Llama

Miguel Zilhão miguel.zilhao.nogueira at tecnico.ulisboa.pt
Tue Jun 18 08:07:06 CDT 2019


many thanks Roland! with this option it does work fine, yes.

i now have a follow-up question... i would like to experiment with different boundary conditions, 
which i would like to implement myself. i had a look at LlamaWaveToy to see how it's implemented 
therein; would the following be a correct way of looping through the outer boundary points (assuming 
the boundary to be a spherical shell, as in LlamaWaveToy)?

   reflevel = GetRefinementLevel(cctkGH)
   map      = MultiPatch_GetMap(cctkGH)
   if (reflevel /= 0 .or. map == 0) return

   do j = 1, cctk_lsh(2)
      do i = 1, cctk_lsh(1)
         do k = cctk_lsh(3)-cctk_nghostzones(3)+1, cctk_lsh(3)
            if (Sn(i,j,k) == -2) then

              [my BCs go here]

            end if
         end do
      end do
   end do

thanks,
Miguel

On 18/06/19 02:45, Haas, Roland wrote:
> Hello Miguel,
> 
> assuming that your outer boundary is spherical, your should set:
> 
> NewRad::z_is_radial = "yes"
> 
> Yours,
> Roland
> 
>> hi all,
>>
>> i've been implementing a scalar wave evolution code to work with the Llama multipatch
>> infrastructure. i think i have it working except for the boundary conditions. as a first test, i
>> tried to call the NewRad infrastructure, in the same way that i usually do for my non-multipatch codes:
>>
>>     ierr = NewRad_Apply(cctkGH, phi, rhs_phi, phi_0, one, n_phi)
>>     ierr = NewRad_Apply(cctkGH, Kphi, rhs_Kphi, Kphi_0, one, n_Kphi)
>>
>> but this does not seem to work as i get instabilities very early on... am i missing something, or is
>> NewRad not designed to work with Llama? if so, what is the "standard" way of imposing BCs for
>> multipatch evolutions?
>>
>> thanks,
>> Miguel
>> _______________________________________________
>> Users mailing list
>> Users at einsteintoolkit.org
>> http://lists.einsteintoolkit.org/mailman/listinfo/users
> 
> 
> 


More information about the Users mailing list