# Dynamic Topography seems to be uneffected by Nullspace removal

**URL:** https://community.geodynamics.org/t/dynamic-topography-seems-to-be-uneffected-by-nullspace-removal/3564
**Category:** ASPECT
**Created:** [July 25, 2024, 1:59pm UTC](https://community.geodynamics.org/t/dynamic-topography-seems-to-be-uneffected-by-nullspace-removal/3564 "2024-07-25T13:59:59Z")
**Posts on this page:** 9
**Page:** 1

<div class="post-metadata">

### Author: ![MajaZimmer](https://avatars.discourse-cdn.com/v4/letter/m/e99b99/32.png) [@MajaZimmer](https://community.geodynamics.org/u/MajaZimmer)
#### Post date: [July 25, 2024, 1:59pm UTC](https://community.geodynamics.org/t/dynamic-topography-seems-to-be-uneffected-by-nullspace-removal/3564/1 "2024-07-25T13:59:59Z")

</div>

Hello everyone,

I’m doing 3d simulations where I evaluate the dynamic topography. I got results I was not expecting and thought that the unremoved Nullspace net rotation was the problem. But after I removed the net rotation the resulting dynamic topography is the same. Why is it not effected?Because the flow pattern looks drastically different.

The original problem is that I got a result for dynamic topography for a model where there is no density contrast (or temperature) only viscosity. (I know this is very unrealistic but I wanted to see what this would result in.) As I understand it if there is no lateral density variation the dynamic topography should be zero. The following skript gives a non zero dynamic topography that has quite a complex pattern even though the model is very simple. When a do the same with a density anomaly instead of viscosity the result looks reasonable.

Thanks in advance, Maja

Here is my Skript:

# A simple setup for convection in a 3d shell. See the

# manual for more information.

set Dimension = 3  
set Use years in output instead of seconds = true  
set End time = 1000  
set Output directory = output-mu\_23\_const\_rm

subsection Material model  
set Model name = multicomponent

subsection Multicomponent  
set Densities = 4400  
set Viscosities = 1e22, 1e23  
set Viscosity averaging scheme = harmonic  
end  
end

subsection Compositional fields  
set Number of fields = 1  
end

subsection Initial composition model  
set Model name = function  
subsection Function  
set Coordinate system = spherical  
set Variable names =r,phi,theta  
set Function expression = if(r\>3480000 & r\< 4480000 & phi \> 0 & phi \< pi/2 & theta\>pi/4 & theta\<3_pi/4 || r\>3480000 & r\< 4480000 & phi \> pi & phi \< 3_pi/2 & theta\>pi/4 & theta\<3\*pi/4,1,0)  
end  
end

subsection Initial temperature model  
set Model name = function  
subsection Function  
set Coordinate system = spherical  
set Variable names =r,phi,theta  
set Function expression = if(r\>3480000 & r\< 4480000 & phi \> 0 & phi \< pi/2 & theta\>pi/4 & theta\<3_pi/4 || r\>3480000 & r\< 4480000 & phi \> pi & phi \< 3_pi/2 & theta\>pi/4 & theta\<3\*pi/4,1500,1500) #erst llsvp, dann mantel  
end  
end

subsection Geometry model  
set Model name = spherical shell

subsection Spherical shell  
set Inner radius = 3480000  
set Outer radius = 6371000  
set Custom mesh subdivision = list of radial values  
set List of radial values = 3586033.3333333335, 3682066.6666666665, 3778100.0, 3874133.3333333335, 3970166.6666666665, 4066200.0, 4162233.333333333, 4258266.666666667, 4354300.0, 4450333.333333333, 4546366.666666666, 4642400.0, 4738433.333333333, 4834466.666666666, 4930500.0, 5026533.333333333, 5122566.666666666, 5218600.0, 5314633.333333333, 5410666.666666666, 5506700.0, 5602733.333333333, 5698766.666666666, 5794800.0, 5890833.333333333, 5986866.666666666, 6082900.0, 6178933.333333333, 6274966.666666666  
set Initial lateral refinement = 2  
end  
end

subsection Boundary velocity model  
set Tangential velocity boundary indicators = top, bottom  
end

subsection Boundary temperature model  
set Fixed temperature boundary indicators = top, bottom  
set List of model names = spherical constant

subsection Spherical constant  
set Inner temperature = 1500  
set Outer temperature = 1500  
end  
end

subsection Nullspace removal  
set Remove nullspace = net rotation  
end

subsection Gravity model  
set Model name = radial constant  
end

subsection Mesh refinement  
set Initial global refinement = 1  
set Initial adaptive refinement = 1  
set Strategy = temperature  
set Time steps between mesh refinement = 15  
end

subsection Postprocess  
set List of postprocessors = visualization, dynamic topography, geoid  
subsection Visualization  
set Output format = vtu  
set Time between graphical output = 1e6  
set Number of grouped files = 1  
set List of output variables = density,viscosity  
end

subsection Depth average  
set Time between graphical output = 1.5e6  
set Output format = vtu  
end  
end

subsection Checkpointing  
set Steps between checkpoint = 50  
end

---

<div class="post-metadata">

### Author: ![bangerth](https://yyz2.discourse-cdn.com/flex036/user_avatar/community.geodynamics.org/bangerth/32/52_2.png) [@bangerth](https://community.geodynamics.org/u/bangerth)
#### Post date: [July 25, 2024, 4:57pm UTC](https://community.geodynamics.org/t/dynamic-topography-seems-to-be-uneffected-by-nullspace-removal/3564/2 "2024-07-25T16:57:54Z")

</div>

Hi @MajaZimmer: Would you mind showing us the results you get, so that we don’t have to run the simulation ourselves?  
Best  
W.

---

<div class="post-metadata">

### Author: ![MajaZimmer](https://avatars.discourse-cdn.com/v4/letter/m/e99b99/32.png) [@MajaZimmer](https://community.geodynamics.org/u/MajaZimmer)
#### Post date: [July 26, 2024, 7:18am UTC](https://community.geodynamics.org/t/dynamic-topography-seems-to-be-uneffected-by-nullspace-removal/3564/3 "2024-07-26T07:18:08Z")

</div>

![mu_23](https://canada1.discourse-cdn.com/flex036/uploads/geodynamics/original/2X/5/5c60429324e1f724177bc585465e82ddc76315a5.png)

I am not sure what exactly you want me to show you. This is the map of dynamic topography from the simulation without nullspace removal. The one with nullspace removal looks exactly the same but I can upload only one file. I dont know where this pattern comes from and I dont understand why the nullspace removal does not have an effect. I can see in paraview that the nullspace removal worked. Could it be that the removal of the nullspace takes places after the dynamic topography is calculated?  
I hope this helps. Do you want me to show you anything else?

Best, Maja

---

<div class="post-metadata">

### Author: ![jaustermann](https://yyz2.discourse-cdn.com/flex036/user_avatar/community.geodynamics.org/jaustermann/32/207_2.png) [@jaustermann](https://community.geodynamics.org/u/jaustermann)
#### Post date: [July 26, 2024, 1:04pm UTC](https://community.geodynamics.org/t/dynamic-topography-seems-to-be-uneffected-by-nullspace-removal/3564/4 "2024-07-26T13:04:16Z")

</div>

Hi Maja,

I believe what you’re seeing are the results of numerical instabilities that form at some of the grid boundaries. There are two reasons that these give you such a large signal in your specific setup. (1) You’re running the model at very low resolution (global refinement of 1). The dynamic topography (and flow) calculation will not be accurate at this resolution. A good way to check that the DT calculation is more accurate is to look at the global mean (which should be close to 0). (2) You’re not prescribing any lateral density perturbation, which I believe enhances the instabilities. Once you prescribe density perturbations these will kick off flow and reduce this grid related pattern. These density perturbations can be very long wavelength (e.g. degree 2) if you want to keep the model simple.

Best,  
Jacky

---

<div class="post-metadata">

### Author: ![gassmoeller](https://yyz2.discourse-cdn.com/flex036/user_avatar/community.geodynamics.org/gassmoeller/32/11_2.png) [@gassmoeller](https://community.geodynamics.org/u/gassmoeller)
#### Post date: [July 26, 2024, 2:38pm UTC](https://community.geodynamics.org/t/dynamic-topography-seems-to-be-uneffected-by-nullspace-removal/3564/5 "2024-07-26T14:38:42Z")

</div>

Hi Maja,  
I think Jacky already described the origin of the anomalies, it is likely that they are a mesh artifacts and show you exactly in which places the mesh conforms more or less to an ideal sphere (they should change/decrease if you change the resolution).

I just wanted to mention one additional point about the nullspace removal: While nullspace removal is important for models that have a nullspace (i.e. models that have no side boundaries and tangential velocities at top and bottom), I do not think it would ever affect the dynamic topography you see. That is because the nullspace removal removes the part of the solution that lies in the nullspace of the Stokes operator, which means the part of the solution vector that will not affect the solution of the equation. In practice this is mostly a solid-body rotation (in a spherical geometry) or solid-body translation (in a box geometry). So in other words the part of the solution that gets changed close to the surface by nullspace removal is only flow that is tangential to the surface. But only flow that is not tangential to the surface will cause dynamic topography. I am simplifying a bit here, lateral pressure gradients may contribute as well, but they are not changed by the nullspace removal either. Thus it wouldnt surprise me if nullspace removal would never change the dynamic topography you see in the output of instantaneous models. In models that run over time it would of course affect where material is transported to in later timesteps, so in those models it could matter.

Best,  
Rene

---

<div class="post-metadata">

### Author: ![Shangxin-Liu](https://yyz2.discourse-cdn.com/flex036/user_avatar/community.geodynamics.org/shangxin-liu/32/290_2.png) [@Shangxin-Liu](https://community.geodynamics.org/u/Shangxin-Liu)
#### Post date: [July 26, 2024, 11:09pm UTC](https://community.geodynamics.org/t/dynamic-topography-seems-to-be-uneffected-by-nullspace-removal/3564/6 "2024-07-26T23:09:33Z")

</div>

Hi Maja,

The pure rotation from nullspace removal is essentially a degree-1 toroidal flow in 3D spherical geometry. Therefore, it’s a horizontal flow along the surface, but the radial velocity gradient (radial stress) is used to calculate dynamic topography. What Rene described clearly detailed this point.

In addition, I’d like to add one more point about your rheology. From your prm file, you divide the viscosity domain to two areas with the values 1e22 and 1e23, respectively (multicomponent material model). If you compare the boundaries between these two compositional areas defined in your prm file and your plot of dynamic topography. You can see that the bizarre large dynamic topography lies along these boundaries. This actually does not surprise me because the abrupt horizontal jump of the viscosity will indeed induce unreasonably large dynamic topography wiggles across the boundary. This is another numerical phenomenon in calculation of the dynamic topography in finite elements across the lateral viscosity jump. I also see this in my models. You can try to increase your resolution to see whether these dynamic topography wiggles can be reduced (or narrowed down).

Can you describe more on your purpose to turn off temperature anomaly while turning on the lateral viscosity division of your domain? People commonly start from a simple model with a simple temperature anomaly pattern (like a single wavelength) and a constant (or radial) viscosity field.

Best,  
Shangxin

---

<div class="post-metadata">

### Author: ![MajaZimmer](https://avatars.discourse-cdn.com/v4/letter/m/e99b99/32.png) [@MajaZimmer](https://community.geodynamics.org/u/MajaZimmer)
#### Post date: [July 29, 2024, 11:45am UTC](https://community.geodynamics.org/t/dynamic-topography-seems-to-be-uneffected-by-nullspace-removal/3564/7 "2024-07-29T11:45:03Z")

</div>

Hi Jacky,

thank you very much for your answer. The tip for the mean of the dynamic topography is greatly appreciated. I increased the global refinement to 2 and the mean DT is now closer to zero and the overall amplitude of the DT is decreased to around 10 m. When I include density variations the outcome looks much more reasonable especially with increased resolution.  
Thanks again!

Best,  
Maja

---

<div class="post-metadata">

### Author: ![MajaZimmer](https://avatars.discourse-cdn.com/v4/letter/m/e99b99/32.png) [@MajaZimmer](https://community.geodynamics.org/u/MajaZimmer)
#### Post date: [July 29, 2024, 11:48am UTC](https://community.geodynamics.org/t/dynamic-topography-seems-to-be-uneffected-by-nullspace-removal/3564/8 "2024-07-29T11:48:44Z")

</div>

Hi Rene,

Thank you for the explanation of the Nullspace removal. It makes a lot of sense now.  
I increased the resolution and the amplitude of the anomalies got smaller as you predicted.  
Thanks again!

Best,  
Maja

---

<div class="post-metadata">

### Author: ![MajaZimmer](https://avatars.discourse-cdn.com/v4/letter/m/e99b99/32.png) [@MajaZimmer](https://community.geodynamics.org/u/MajaZimmer)
#### Post date: [July 29, 2024, 11:54am UTC](https://community.geodynamics.org/t/dynamic-topography-seems-to-be-uneffected-by-nullspace-removal/3564/9 "2024-07-29T11:54:40Z")

</div>

Hi Shangxin,

Thank you for your answer. I increased the resolution and the dynamic topography decreased.  
There is not really a purpose for this model 😃 I was just curious what the results would look like and then I was confused by the pattern. But it makes much sense now that it is only a numerical problem. In my other models I use density and temperature anomalies with different viscosity structures for the mantle like you descibed.  
Thanks again for your reply!

Best,  
Maja
