Skip to content

Commit

Permalink
deploy: 0d2ed11
Browse files Browse the repository at this point in the history
  • Loading branch information
lmoresi committed Apr 11, 2024
1 parent b5368aa commit 8781b98
Show file tree
Hide file tree
Showing 18 changed files with 400 additions and 229 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -454,8 +454,6 @@ <h1>Field (SemiLagrange) Advection solver test<a class="headerlink" href="#field
import sympy

options = PETSc.Options()

# options.getAll()
</pre></div>
</div>
</div>
Expand Down
155 changes: 98 additions & 57 deletions main/Notebooks/Examples-NavierStokes/Ex_NavierStokesRotationTest.html

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -730,7 +730,7 @@ <h1>Navier Stokes test: flow around a circular inclusion (2D)<a class="headerlin
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="c1"># Set solve options here (or remove default values</span>
<span class="c1"># stokes.petsc_options.getAll()</span>

<span class="n">navier_stokes</span> <span class="o">=</span> <span class="n">uw</span><span class="o">.</span><span class="n">systems</span><span class="o">.</span><span class="n">NavierStokesSLCN</span><span class="p">(</span>
<span class="n">navier_stokes</span> <span class="o">=</span> <span class="n">uw</span><span class="o">.</span><span class="n">systems</span><span class="o">.</span><span class="n">NavierStokes</span><span class="p">(</span>
<span class="n">pipemesh</span><span class="p">,</span>
<span class="n">velocityField</span><span class="o">=</span><span class="n">v_soln</span><span class="p">,</span>
<span class="n">pressureField</span><span class="o">=</span><span class="n">p_soln</span><span class="p">,</span>
Expand Down Expand Up @@ -920,6 +920,20 @@ <h1>Navier Stokes test: flow around a circular inclusion (2D)<a class="headerlin
</div>
<div class="cell docutils container">
<div class="cell_input docutils container">
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="n">dt1</span><span class="p">,</span> <span class="n">_</span> <span class="o">=</span> <span class="n">navier_stokes</span><span class="o">.</span><span class="n">estimate_dt</span><span class="p">()</span>
</pre></div>
</div>
</div>
</div>
<div class="cell docutils container">
<div class="cell_input docutils container">
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="mi">0</span><span class="o">/</span><span class="mi">0</span>
</pre></div>
</div>
</div>
</div>
<div class="cell docutils container">
<div class="cell_input docutils container">
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="n">ts</span> <span class="o">=</span> <span class="mi">0</span>
<span class="n">elapsed_time</span> <span class="o">=</span> <span class="mf">0.0</span>
<span class="n">dt_ns</span> <span class="o">=</span> <span class="mf">0.01</span>
Expand Down

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -540,6 +540,13 @@ <h1>Validate constitutive models<a class="headerlink" href="#validate-constituti
</div>
<div class="cell docutils container">
<div class="cell_input docutils container">
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="mi">0</span><span class="o">/</span><span class="mi">0</span>
</pre></div>
</div>
</div>
</div>
<div class="cell docutils container">
<div class="cell_input docutils container">
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="n">v_soln</span> <span class="o">=</span> <span class="n">uw</span><span class="o">.</span><span class="n">discretisation</span><span class="o">.</span><span class="n">MeshVariable</span><span class="p">(</span><span class="s2">&quot;U&quot;</span><span class="p">,</span> <span class="n">mesh1</span><span class="p">,</span> <span class="n">mesh1</span><span class="o">.</span><span class="n">dim</span><span class="p">,</span> <span class="n">degree</span><span class="o">=</span><span class="mi">2</span><span class="p">)</span>
<span class="n">p_soln</span> <span class="o">=</span> <span class="n">uw</span><span class="o">.</span><span class="n">discretisation</span><span class="o">.</span><span class="n">MeshVariable</span><span class="p">(</span>
<span class="s2">&quot;P&quot;</span><span class="p">,</span> <span class="n">mesh1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="n">vtype</span><span class="o">=</span><span class="n">uw</span><span class="o">.</span><span class="n">VarType</span><span class="o">.</span><span class="n">SCALAR</span><span class="p">,</span> <span class="n">degree</span><span class="o">=</span><span class="mi">1</span><span class="p">,</span> <span class="n">continuous</span><span class="o">=</span><span class="kc">True</span>
Expand Down
46 changes: 45 additions & 1 deletion main/Notebooks/Examples-Sandbox-VEP/Ex_Sheared_Layer_Test.html
Original file line number Diff line number Diff line change
Expand Up @@ -612,7 +612,7 @@ <h1>Validate constitutive models<a class="headerlink" href="#validate-constituti
<span class="p">)</span>

<span class="c1">## build periodic mesh (mesh1)</span>
<span class="c1"># mesh1.view()</span>
<span class="n">mesh1</span><span class="o">.</span><span class="n">view</span><span class="p">()</span>
<span class="c1"># uw.cython.petsc_discretisation.petsc_dm_set_periodicity(</span>
<span class="c1"># mesh1.dm, [0.1, 0.0], [-1.5, 0.0], [1.5, 0.0])</span>
</pre></div>
Expand All @@ -621,6 +621,50 @@ <h1>Validate constitutive models<a class="headerlink" href="#validate-constituti
</div>
<div class="cell docutils container">
<div class="cell_input docutils container">
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="n">bmask</span> <span class="o">=</span> <span class="n">mesh1</span><span class="o">.</span><span class="n">meshVariable_mask_from_label</span><span class="p">(</span><span class="s2">&quot;Bottom&quot;</span><span class="p">,</span> <span class="mi">1</span> <span class="p">)</span>
<span class="n">tmask</span> <span class="o">=</span> <span class="n">mesh1</span><span class="o">.</span><span class="n">meshVariable_mask_from_label</span><span class="p">(</span><span class="s2">&quot;UW_Boundaries&quot;</span><span class="p">,</span> <span class="n">mesh1</span><span class="o">.</span><span class="n">boundaries</span><span class="o">.</span><span class="n">Top</span><span class="o">.</span><span class="n">value</span> <span class="p">)</span>
</pre></div>
</div>
</div>
</div>
<div class="cell docutils container">
<div class="cell_input docutils container">
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="k">if</span> <span class="n">uw</span><span class="o">.</span><span class="n">mpi</span><span class="o">.</span><span class="n">size</span> <span class="o">==</span> <span class="mi">1</span><span class="p">:</span>

<span class="kn">import</span> <span class="nn">pyvista</span> <span class="k">as</span> <span class="nn">pv</span>
<span class="kn">import</span> <span class="nn">underworld3.visualisation</span> <span class="k">as</span> <span class="nn">vis</span>

<span class="n">pvmesh</span> <span class="o">=</span> <span class="n">vis</span><span class="o">.</span><span class="n">mesh_to_pv_mesh</span><span class="p">(</span><span class="n">mesh1</span><span class="p">)</span>
<span class="n">pvmesh</span><span class="o">.</span><span class="n">point_data</span><span class="p">[</span><span class="s2">&quot;MB&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="n">vis</span><span class="o">.</span><span class="n">scalar_fn_to_pv_points</span><span class="p">(</span><span class="n">pvmesh</span><span class="p">,</span> <span class="n">bmask</span><span class="o">.</span><span class="n">sym</span><span class="p">)</span>
<span class="n">pvmesh</span><span class="o">.</span><span class="n">point_data</span><span class="p">[</span><span class="s2">&quot;MT&quot;</span><span class="p">]</span> <span class="o">=</span> <span class="n">vis</span><span class="o">.</span><span class="n">scalar_fn_to_pv_points</span><span class="p">(</span><span class="n">pvmesh</span><span class="p">,</span> <span class="n">tmask</span><span class="o">.</span><span class="n">sym</span><span class="p">)</span>

<span class="n">pl</span> <span class="o">=</span> <span class="n">pv</span><span class="o">.</span><span class="n">Plotter</span><span class="p">(</span><span class="n">window_size</span><span class="o">=</span><span class="p">(</span><span class="mi">1000</span><span class="p">,</span> <span class="mi">1000</span><span class="p">))</span>

<span class="n">pl</span><span class="o">.</span><span class="n">add_mesh</span><span class="p">(</span>
<span class="n">pvmesh</span><span class="p">,</span>
<span class="n">cmap</span><span class="o">=</span><span class="s2">&quot;Blues&quot;</span><span class="p">,</span>
<span class="n">edge_color</span><span class="o">=</span><span class="s2">&quot;Grey&quot;</span><span class="p">,</span>
<span class="n">show_edges</span><span class="o">=</span><span class="kc">True</span><span class="p">,</span>
<span class="c1"># clim=[0.0,1.0],</span>
<span class="n">scalars</span><span class="o">=</span><span class="s2">&quot;MT&quot;</span><span class="p">,</span>
<span class="n">use_transparency</span><span class="o">=</span><span class="kc">False</span><span class="p">,</span>
<span class="n">opacity</span><span class="o">=</span><span class="mf">0.5</span><span class="p">,</span>
<span class="p">)</span>

<span class="n">pl</span><span class="o">.</span><span class="n">show</span><span class="p">()</span>
</pre></div>
</div>
</div>
</div>
<div class="cell docutils container">
<div class="cell_input docutils container">
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="mi">0</span><span class="o">/</span><span class="mi">0</span>
</pre></div>
</div>
</div>
</div>
<div class="cell docutils container">
<div class="cell_input docutils container">
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span>
<span class="n">swarm</span> <span class="o">=</span> <span class="n">uw</span><span class="o">.</span><span class="n">swarm</span><span class="o">.</span><span class="n">Swarm</span><span class="p">(</span><span class="n">mesh</span><span class="o">=</span><span class="n">mesh1</span><span class="p">,</span> <span class="n">recycle_rate</span><span class="o">=</span><span class="mi">5</span><span class="p">)</span>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -535,7 +535,14 @@ <h1>Stokes Benchmark SolCx<a class="headerlink" href="#stokes-benchmark-solcx" t
</div>
<div class="cell docutils container">
<div class="cell_input docutils container">
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="n">stokes</span> <span class="o">=</span> <span class="n">uw</span><span class="o">.</span><span class="n">systems</span><span class="o">.</span><span class="n">Stokes</span><span class="p">(</span><span class="n">mesh</span><span class="p">,</span> <span class="n">verbose</span><span class="o">=</span><span class="kc">False</span><span class="p">)</span>
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="n">mesh</span><span class="o">.</span><span class="n">view</span><span class="p">()</span>
</pre></div>
</div>
</div>
</div>
<div class="cell docutils container">
<div class="cell_input docutils container">
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="n">stokes</span> <span class="o">=</span> <span class="n">uw</span><span class="o">.</span><span class="n">systems</span><span class="o">.</span><span class="n">Stokes</span><span class="p">(</span><span class="n">mesh</span><span class="p">,</span> <span class="n">verbose</span><span class="o">=</span><span class="kc">True</span><span class="p">)</span>
</pre></div>
</div>
</div>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,6 @@

options = PETSc.Options()

# options.getAll()
# -
meshball = uw.meshing.Annulus(
radiusOuter=1.0, radiusInner=0.5, cellSize=0.2, refinement=1, qdegree=3
Expand Down Expand Up @@ -186,6 +185,9 @@ def plot_T_mesh(filename):
delta_t = 0.001

adv_diff.solve(timestep=delta_t, verbose=False, _force_setup=False)
# -



# +
# check the mesh if in a notebook / serial
Expand Down Expand Up @@ -221,6 +223,9 @@ def plot_T_mesh(filename):
pl.remove_scalar_bar("mag")

pl.show()
# -



# +
# Advection/diffusion model / update in time
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -202,6 +202,8 @@
stokes.bodyforce = unit_rvec * gravity_fn * Rayleigh * t_soln.fn
stokes.solve(verbose=False)



# +
# Check the diffusion part of the solve converges

Expand Down
Loading

0 comments on commit 8781b98

Please sign in to comment.