{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import os\n",
    "\n",
    "import time\n",
    "from tqdm.notebook import tqdm\n",
    "\n",
    "import numpy as np\n",
    "import math\n",
    "from scipy.special import erfc\n",
    "\n",
    "from pystencils.session import *\n",
    "from lbmpy.session import *\n",
    "\n",
    "from pystencils.simp import sympy_cse\n",
    "from pystencils.boundaries import BoundaryHandling\n",
    "\n",
    "from lbmpy.phasefield_allen_cahn.parameter_calculation import AllenCahnParameters\n",
    "from lbmpy.phasefield_allen_cahn.contact_angle import ContactAngle\n",
    "from lbmpy.phasefield_allen_cahn.kernel_equations import *\n",
    "\n",
    "from lbmpy.advanced_streaming import LBMPeriodicityHandling\n",
    "from lbmpy.boundaries import NoSlip, LatticeBoltzmannBoundaryHandling"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "If `pycuda` is installed the simulation automatically runs on GPU"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "No pycuda installed\n"
     ]
    }
   ],
   "source": [
    "try:\n",
    "    import pycuda\n",
    "except ImportError:\n",
    "    pycuda = None\n",
    "    gpu = False\n",
    "    target = ps.Target.CPU\n",
    "    print('No pycuda installed')\n",
    "\n",
    "if pycuda:\n",
    "    gpu = True\n",
    "    target = ps.Target.GPU"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Capillary wave simulated with a phase-field model for immiscible fluids"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Geometry Setup\n",
    "\n",
    "First of all the stencils for the phase-field LB step as well as the stencil for the hydrodynamic LB step are defined. According to the stencils the simulation runs either in 2D or 3D"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [],
   "source": [
    "stencil_phase = LBStencil(Stencil.D2Q9)\n",
    "stencil_hydro = LBStencil(Stencil.D2Q9)\n",
    "assert(stencil_hydro.D == stencil_phase.D)\n",
    "\n",
    "dimensions = stencil_phase.D"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "timesteps = 238800\n",
      "Re = 10\n",
      "Pe = 0.41876046901171776\n",
      "Cn = 0.1\n",
      "domain_width = 50\n",
      "fluid_depth = 25.0\n",
      "amplitude = 0.5\n",
      "relaxation_rate_heavy = 1.99\n",
      "mobility = 0.02\n",
      "interface_width = 5\n",
      "density_heavy = 1.0\n",
      "density_light = 0.001\n",
      "density_ratio = 1000\n",
      "kinematic_viscosity_heavy = 0.0008375209380234356\n",
      "kinematic_viscosity_light = 0.0008375209380234356\n",
      "kinematic_viscosity_ratio = 1\n",
      "dynamic_viscosity_heavy = 0.0008375209380234356\n",
      "dynamic_viscosity_light = 8.375209380234357e-07\n",
      "dynamic_viscosity_ratio = 1000.0\n",
      "wavelength = 50\n",
      "wavenumber = 0.12566370614359174\n",
      "wave_frequency = 0.00033500837520937423\n",
      "surface_tension = 5.6612953740701554e-05\n",
      "gravitational_acceleration = 0\n"
     ]
    }
   ],
   "source": [
    "# user defined input\n",
    "\n",
    "Re = 10 # Reynolds number\n",
    "domain_width = 50\n",
    "fluid_depth = 0.5 * domain_width\n",
    "amplitude = 0.01 * domain_width\n",
    "relaxation_rate_heavy = 1.99\n",
    "mobility = 0.02 # phase field mobility\n",
    "interface_width = 5 # phase field interface width\n",
    "density_heavy = 1.0 # density of heavy phase\n",
    "density_ratio = 1000\n",
    "density_light = density_heavy / density_ratio # density of light phase\n",
    "kinematic_viscosity_ratio = 1\n",
    "\n",
    "kinematic_viscosity_heavy = 1 / 3 * (1 / relaxation_rate_heavy - 0.5)\n",
    "kinematic_viscosity_light = kinematic_viscosity_heavy / kinematic_viscosity_ratio\n",
    "wavelength = domain_width\n",
    "wavenumber = 2.0 * np.pi / domain_width\n",
    "wave_frequency = Re * kinematic_viscosity_heavy / domain_width / amplitude # angular wave frequency\n",
    "surface_tension = wave_frequency**2 * (density_heavy + density_light) / wavenumber**3\n",
    "gravitational_acceleration = 0\n",
    "Pe = domain_width * amplitude * wave_frequency / mobility # Peclet number\n",
    "Cn = interface_width / domain_width # Cahn number\n",
    "dynamic_viscosity_heavy = kinematic_viscosity_heavy * density_heavy\n",
    "relaxation_time_heavy = 3.0 * kinematic_viscosity_heavy\n",
    "kinematic_viscosity_light = kinematic_viscosity_heavy / kinematic_viscosity_ratio\n",
    "dynamic_viscosity_light = kinematic_viscosity_light * density_light\n",
    "relaxation_time_light = 3.0 * kinematic_viscosity_light\n",
    "\n",
    "timesteps = int(80 / wave_frequency)\n",
    "\n",
    "data_extract_frequency = int(0.1 / wave_frequency)\n",
    "vtk_output_frequency = int(1 / wave_frequency)\n",
    "vtk_output_path = \"vtk_out/capillary-wave\"\n",
    "vtk_base_directory = vtk_output_path.split(\"/\")[0] # create directory for vtk-output if it does not yet exist\n",
    "if not os.path.exists(vtk_base_directory):\n",
    "    os.mkdir(os.getcwd() + \"/\" + vtk_base_directory)\n",
    "\n",
    "domain_size = (domain_width, domain_width)\n",
    "filename = \"pf-re-\" + str(Re) + \"-resolution-\" + str(domain_width) + \".txt\"\n",
    "\n",
    "print(\"timesteps =\", timesteps)\n",
    "print(\"Re =\", Re)\n",
    "print(\"Pe =\", Pe)\n",
    "print(\"Cn =\", Cn)\n",
    "print(\"domain_width =\", domain_width)\n",
    "print(\"fluid_depth =\", fluid_depth)\n",
    "print(\"amplitude =\", amplitude)\n",
    "print(\"relaxation_rate_heavy =\", relaxation_rate_heavy)\n",
    "print(\"mobility =\", mobility)\n",
    "print(\"interface_width =\", interface_width)\n",
    "print(\"density_heavy =\", density_heavy)\n",
    "print(\"density_light =\", density_light)\n",
    "print(\"density_ratio =\", density_ratio)\n",
    "print(\"kinematic_viscosity_heavy =\", kinematic_viscosity_heavy)\n",
    "print(\"kinematic_viscosity_light =\", kinematic_viscosity_light)\n",
    "print(\"kinematic_viscosity_ratio =\", kinematic_viscosity_ratio)\n",
    "print(\"dynamic_viscosity_heavy =\", dynamic_viscosity_heavy)\n",
    "print(\"dynamic_viscosity_light =\", dynamic_viscosity_light)\n",
    "print(\"dynamic_viscosity_ratio =\", dynamic_viscosity_heavy/dynamic_viscosity_light)\n",
    "print(\"wavelength =\", wavelength)\n",
    "print(\"wavenumber =\", wavenumber)\n",
    "print(\"wave_frequency =\", wave_frequency)\n",
    "print(\"surface_tension =\", surface_tension)\n",
    "print(\"gravitational_acceleration =\", gravitational_acceleration)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [],
   "source": [
    "parameters = AllenCahnParameters(density_heavy=density_heavy, density_light=density_light,\n",
    "                                 dynamic_viscosity_heavy=dynamic_viscosity_heavy,\n",
    "                                 dynamic_viscosity_light=dynamic_viscosity_light,\n",
    "                                 surface_tension=surface_tension, mobility=mobility,\n",
    "                                 interface_thickness=interface_width)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "\n",
       "        <table style=\"border:none; width: 100%\">\n",
       "            <tr style=\"border:none\">\n",
       "                <th style=\"border:none\" >Name</th>\n",
       "                <th style=\"border:none\" >SymPy Symbol </th>\n",
       "                <th style=\"border:none\" >Value</th>\n",
       "            </tr>\n",
       "            <tr style=\"border:none\">\n",
       "                            <td style=\"border:none\">Density heavy phase</td>\n",
       "                            <td style=\"border:none\">$\\rho_{H}$</td>\n",
       "                            <td style=\"border:none\">$1.0$</td>\n",
       "                         </tr>\n",
       "<tr style=\"border:none\">\n",
       "                            <td style=\"border:none\">Density light phase</td>\n",
       "                            <td style=\"border:none\">$\\rho_{L}$</td>\n",
       "                            <td style=\"border:none\">$0.001$</td>\n",
       "                         </tr>\n",
       "<tr style=\"border:none\">\n",
       "                            <td style=\"border:none\">Relaxation time heavy phase</td>\n",
       "                            <td style=\"border:none\">$\\tau_{H}$</td>\n",
       "                            <td style=\"border:none\">$0.00251256281407031$</td>\n",
       "                         </tr>\n",
       "<tr style=\"border:none\">\n",
       "                            <td style=\"border:none\">Relaxation time light phase</td>\n",
       "                            <td style=\"border:none\">$\\tau_{L}$</td>\n",
       "                            <td style=\"border:none\">$0.00251256281407031$</td>\n",
       "                         </tr>\n",
       "<tr style=\"border:none\">\n",
       "                            <td style=\"border:none\">Relaxation rate Allen Cahn LB</td>\n",
       "                            <td style=\"border:none\">$\\omega_{\\phi}$</td>\n",
       "                            <td style=\"border:none\">$1.78571428571429$</td>\n",
       "                         </tr>\n",
       "<tr style=\"border:none\">\n",
       "                            <td style=\"border:none\">Gravitational acceleration</td>\n",
       "                            <td style=\"border:none\">$F_{g}$</td>\n",
       "                            <td style=\"border:none\">$0.0$</td>\n",
       "                         </tr>\n",
       "<tr style=\"border:none\">\n",
       "                            <td style=\"border:none\">Interface thickness</td>\n",
       "                            <td style=\"border:none\">$W$</td>\n",
       "                            <td style=\"border:none\">$5$</td>\n",
       "                         </tr>\n",
       "<tr style=\"border:none\">\n",
       "                            <td style=\"border:none\">Mobility</td>\n",
       "                            <td style=\"border:none\">$M_{m}$</td>\n",
       "                            <td style=\"border:none\">$0.02$</td>\n",
       "                         </tr>\n",
       "<tr style=\"border:none\">\n",
       "                            <td style=\"border:none\">Surface tension</td>\n",
       "                            <td style=\"border:none\">$\\sigma$</td>\n",
       "                            <td style=\"border:none\">$5.66129537407016 \\cdot 10^{-5}$</td>\n",
       "                         </tr>\n",
       "\n",
       "        </table>\n",
       "        "
      ],
      "text/plain": [
       "<lbmpy.phasefield_allen_cahn.parameter_calculation.AllenCahnParameters at 0x146131580>"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "parameters"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Fields\n",
    "\n",
    "As a next step all fields which are needed get defined. To do so we create a `datahandling` object. More details about it can be found in the third tutorial of the [pystencils framework]( http://pycodegen.pages.walberla.net/pystencils/). Basically it holds all fields and manages the kernel runs."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "# create a datahandling object\n",
    "dh = ps.create_data_handling((domain_size), periodicity=(True, False), parallel=False, default_target=target)\n",
    "\n",
    "# fields \n",
    "g = dh.add_array(\"g\", values_per_cell=len(stencil_hydro))\n",
    "dh.fill(\"g\", 0.0, ghost_layers=True)\n",
    "h = dh.add_array(\"h\",values_per_cell=len(stencil_phase))\n",
    "dh.fill(\"h\", 0.0, ghost_layers=True)\n",
    "\n",
    "g_tmp = dh.add_array(\"g_tmp\", values_per_cell=len(stencil_hydro))\n",
    "dh.fill(\"g_tmp\", 0.0, ghost_layers=True)\n",
    "h_tmp = dh.add_array(\"h_tmp\",values_per_cell=len(stencil_phase))\n",
    "dh.fill(\"h_tmp\", 0.0, ghost_layers=True)\n",
    "\n",
    "u = dh.add_array(\"u\", values_per_cell=dh.dim)\n",
    "dh.fill(\"u\", 0.0, ghost_layers=True)\n",
    "\n",
    "rho = dh.add_array(\"rho\", values_per_cell=1)\n",
    "dh.fill(\"rho\", 1.0, ghost_layers=True)\n",
    "\n",
    "C = dh.add_array(\"C\")\n",
    "dh.fill(\"C\", 0.0, ghost_layers=True)\n",
    "C_tmp = dh.add_array(\"C_tmp\")\n",
    "dh.fill(\"C_tmp\", 0.0, ghost_layers=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [],
   "source": [
    "# set the frequency of the file outputs\n",
    "vtk_writer = dh.create_vtk_writer(vtk_output_path, [\"C\", \"u\", \"rho\"], ghost_layers=True)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [],
   "source": [
    "rho_L = parameters.symbolic_density_light\n",
    "rho_H = parameters.symbolic_density_heavy\n",
    "density = rho_L + C.center * (rho_H - rho_L)\n",
    "\n",
    "body_force = [0, 0, 0]\n",
    "body_force[1] = parameters.symbolic_gravitational_acceleration * density"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Definition of the lattice Boltzmann methods"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [],
   "source": [
    "w_c = parameters.symbolic_omega_phi\n",
    "\n",
    "config_phase = LBMConfig(stencil=stencil_phase, method=Method.MRT, compressible=True,\n",
    "                         delta_equilibrium=False,\n",
    "                         force=sp.symbols(\"F_:2\"), velocity_input=u,\n",
    "                         weighted=True, relaxation_rates=[0, w_c, w_c, 1, 1, 1, 1, 1, 1],\n",
    "                         output={'density': C_tmp}, kernel_type='stream_pull_collide')\n",
    "\n",
    "method_phase = create_lb_method(lbm_config=config_phase)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [],
   "source": [
    "omega = parameters.omega(C)\n",
    "config_hydro = LBMConfig(stencil=stencil_hydro, method=Method.MRT, compressible=False,\n",
    "                         weighted=True, relaxation_rates=[omega, 1, 1, 1],\n",
    "                         force=sp.symbols(\"F_:2\"),\n",
    "                         output={'velocity': u}, kernel_type='collide_stream_push')\n",
    "\n",
    "method_hydro = create_lb_method(lbm_config=config_hydro)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Initialization"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[['spatialInner0'], ['spatialInner1']]\n",
      "[['spatialInner0'], ['spatialInner1']]\n"
     ]
    }
   ],
   "source": [
    "h_updates = initializer_kernel_phase_field_lb(method_phase, C, u, h, parameters)\n",
    "g_updates = initializer_kernel_hydro_lb(method_hydro, 1, u, g)\n",
    "\n",
    "h_init = ps.create_kernel(h_updates, target=dh.default_target, cpu_openmp=True).compile()\n",
    "g_init = ps.create_kernel(g_updates, target=dh.default_target, cpu_openmp=True).compile()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [],
   "source": [
    "# initialize the phase field\n",
    "def initialize_phasefield():\n",
    "    Nx = domain_size[0]\n",
    "    Ny = domain_size[1]\n",
    "    \n",
    "    for block in dh.iterate(ghost_layers=True, inner_ghost_layers=False):\n",
    "        # get x as cell center coordinate, i.e., including shift with 0.5\n",
    "        x = np.zeros_like(block.midpoint_arrays[0])\n",
    "        x[:, :] = block.midpoint_arrays[0]\n",
    "        \n",
    "        # get y as cell center coordinate, i.e., including shift with 0.5\n",
    "        y = np.zeros_like(block.midpoint_arrays[1])\n",
    "        y[:, :] = block.midpoint_arrays[1] \n",
    "        \n",
    "        tmp = fluid_depth + amplitude * np.cos(x / (Nx - 1) * np.pi * 2 + np.pi)\n",
    "        \n",
    "        # initialize diffuse interface with tanh profile\n",
    "        init_values = 0.5 - 0.5 * np.tanh((y - tmp) / (interface_width / 2))\n",
    "        \n",
    "        block[\"C\"][:, :] = init_values\n",
    "        block[\"C_tmp\"][:, :] = init_values\n",
    "        \n",
    "    if gpu:\n",
    "        dh.all_to_gpu()            \n",
    "    \n",
    "    dh.run_kernel(h_init, **parameters.symbolic_to_numeric_map)\n",
    "    dh.run_kernel(g_init)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1152x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# plot initial profile\n",
    "x = np.arange(0, domain_size[0], 1)   # start,stop,step\n",
    "y = fluid_depth + amplitude * np.cos(x / (domain_size[0] - 1) * np.pi * 2 + np.pi)\n",
    "\n",
    "plt.plot(x,y, marker='o')\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "asymmetric: 25.111260466978155 25.11126046697816\n"
     ]
    }
   ],
   "source": [
    "# check symmetry of sine-curve\n",
    "for i in range(0, domain_size[0] - 1):\n",
    "    if (i >= domain_size[0] * 0.5):\n",
    "        continue\n",
    "    if (y[i] != y[domain_size[0] - 1 - i]):\n",
    "        print(\"asymmetric:\", y[i], y[domain_size[0] - 1 - i])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {
    "scrolled": true
   },
   "outputs": [],
   "source": [
    "initialize_phasefield()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1152x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.scalar_field(dh.cpu_arrays[\"C\"])\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1152x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# plot initial interface profile\n",
    "x = np.arange(0, domain_size[1]+2, 1)   # start,stop,step\n",
    "y = dh.cpu_arrays[\"C\"][int(domain_size[0] * 0.5), :]\n",
    "\n",
    "plt.plot(x,y, marker='o')\n",
    "plt.grid()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [],
   "source": [
    "force_h = interface_tracking_force(C, stencil_phase, parameters)\n",
    "hydro_force = hydrodynamic_force(g, C, method_hydro, parameters, body_force)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Definition of the LB update rules"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[['spatialInner0'], ['spatialInner1']]\n"
     ]
    }
   ],
   "source": [
    "lbm_optimisation = LBMOptimisation(symbolic_field=h, symbolic_temporary_field=h_tmp)\n",
    "allen_cahn_update_rule = create_lb_update_rule(lbm_config=config_phase,\n",
    "                                               lbm_optimisation=lbm_optimisation)\n",
    "\n",
    "allen_cahn_update_rule = add_interface_tracking_force(allen_cahn_update_rule, force_h)\n",
    "\n",
    "ast_kernel = ps.create_kernel(allen_cahn_update_rule, target=dh.default_target, cpu_openmp=True)\n",
    "kernel_allen_cahn_lb = ast_kernel.compile()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[['spatialInner0'], ['spatialInner1']]\n"
     ]
    }
   ],
   "source": [
    "force_Assignments = hydrodynamic_force_assignments(g, u, C, method_hydro, parameters, body_force)\n",
    "\n",
    "lbm_optimisation = LBMOptimisation(symbolic_field=g, symbolic_temporary_field=g_tmp)\n",
    "hydro_lb_update_rule = create_lb_update_rule(lbm_config=config_hydro,\n",
    "                                             lbm_optimisation=lbm_optimisation)\n",
    "\n",
    "hydro_lb_update_rule = add_hydrodynamic_force(hydro_lb_update_rule, force_Assignments, C, g, parameters)\n",
    "\n",
    "ast_kernel = ps.create_kernel(hydro_lb_update_rule, target=dh.default_target, cpu_openmp=True)\n",
    "kernel_hydro_lb = ast_kernel.compile()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Boundary Conditions"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [],
   "source": [
    "# periodic Boundarys for g, h and C\n",
    "periodic_BC_C = dh.synchronization_function(C.name, target=dh.default_target, optimization = {\"openmp\": True})\n",
    "\n",
    "periodic_BC_g = LBMPeriodicityHandling(stencil=stencil_hydro, data_handling=dh, pdf_field_name=g.name,\n",
    "                                       streaming_pattern='push')\n",
    "periodic_BC_h = LBMPeriodicityHandling(stencil=stencil_phase, data_handling=dh, pdf_field_name=h.name,\n",
    "                                       streaming_pattern='pull')\n",
    "\n",
    "# No slip boundary for the phasefield lbm\n",
    "bh_allen_cahn = LatticeBoltzmannBoundaryHandling(method_phase, dh, 'h',\n",
    "                                                 target=dh.default_target, name='boundary_handling_h',\n",
    "                                                 streaming_pattern='pull')\n",
    "\n",
    "# No slip boundary for the velocityfield lbm\n",
    "bh_hydro = LatticeBoltzmannBoundaryHandling(method_hydro, dh, 'g' ,\n",
    "                                            target=dh.default_target, name='boundary_handling_g',\n",
    "                                            streaming_pattern='push')\n",
    "\n",
    "contact_angle = BoundaryHandling(dh, C.name, stencil_hydro, target=dh.default_target)\n",
    "contact = ContactAngle(90, interface_width)\n",
    "\n",
    "wall = NoSlip()\n",
    "if dimensions == 2:\n",
    "    bh_allen_cahn.set_boundary(wall, make_slice[:, 0])\n",
    "    bh_allen_cahn.set_boundary(wall, make_slice[:, -1])\n",
    "\n",
    "    bh_hydro.set_boundary(wall, make_slice[:, 0])\n",
    "    bh_hydro.set_boundary(wall, make_slice[:, -1])\n",
    "    \n",
    "    contact_angle.set_boundary(contact, make_slice[:, 0])\n",
    "    contact_angle.set_boundary(contact, make_slice[:, -1])\n",
    "else:\n",
    "    bh_allen_cahn.set_boundary(wall, make_slice[:, 0, :])\n",
    "    bh_allen_cahn.set_boundary(wall, make_slice[:, -1, :])\n",
    "\n",
    "    bh_hydro.set_boundary(wall, make_slice[:, 0, :])\n",
    "    bh_hydro.set_boundary(wall, make_slice[:, -1, :])\n",
    "    \n",
    "    contact_angle.set_boundary(contact, make_slice[:, 0, :])\n",
    "    contact_angle.set_boundary(contact, make_slice[:, -1, :])\n",
    "\n",
    "\n",
    "bh_allen_cahn.prepare()\n",
    "bh_hydro.prepare()\n",
    "contact_angle.prepare()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Full timestep"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [],
   "source": [
    "# definition of the timestep for the immiscible fluids model\n",
    "def timeloop():\n",
    "    # Solve the interface tracking LB step with boundary conditions\n",
    "    periodic_BC_h()\n",
    "    bh_allen_cahn()    \n",
    "    dh.run_kernel(kernel_allen_cahn_lb, **parameters.symbolic_to_numeric_map)\n",
    "    dh.swap(\"C\", \"C_tmp\")\n",
    "    \n",
    "    # apply the three phase-phase contact angle\n",
    "    contact_angle()\n",
    "    # periodic BC of the phase-field\n",
    "    periodic_BC_C()\n",
    "    \n",
    "    # solve the hydro LB step with boundary conditions\n",
    "    dh.run_kernel(kernel_hydro_lb, **parameters.symbolic_to_numeric_map)\n",
    "    periodic_BC_g()\n",
    "    bh_hydro()\n",
    "    \n",
    "    # compute density (only for vtk output)\n",
    "    # must be done BEFORE swapping fields to avoid having outdated values\n",
    "    compute_density()\n",
    "    \n",
    "    # field swaps\n",
    "    dh.swap(\"h\", \"h_tmp\")\n",
    "    dh.swap(\"g\", \"g_tmp\")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [],
   "source": [
    "def initialize_hydrostatic_pressure():   \n",
    "    for block in dh.iterate(ghost_layers=True, inner_ghost_layers=False):       \n",
    "        \n",
    "        # get y as cell center coordinate, i.e., including shift with 0.5\n",
    "        y = np.zeros_like(block.midpoint_arrays[1])\n",
    "        y[:, :] = block.midpoint_arrays[1]\n",
    "        \n",
    "        # compute hydrostatic density\n",
    "        rho_hydrostatic = 1 + 3 * gravitational_acceleration * (y - fluid_depth)\n",
    "        \n",
    "        # subtract 1 because PDFs in incompressible LBM are centered around zero in lbmpy\n",
    "        rho_hydrostatic -= 1\n",
    "\n",
    "        # set equilibrium PDFs with velocity=0 and rho; \n",
    "        for i in range(0, stencil_hydro.Q, 1):\n",
    "            block[\"g\"][:,:,i] = method_hydro.weights[i] * rho_hydrostatic[:,:]\n",
    "            block[\"g_tmp\"][:,:,i] = method_hydro.weights[i] * rho_hydrostatic[:,:]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [],
   "source": [
    "def compute_density():   \n",
    "    for block in dh.iterate(ghost_layers=True, inner_ghost_layers=False):\n",
    "        # PDFs in incompressible LBM are centered around zero in lbmpy\n",
    "        # => add 1 to whole sum, i.e., initialize with 1\n",
    "        block[\"rho\"].fill(1);\n",
    "        \n",
    "        # compute density\n",
    "        for i in range(block[\"g\"].shape[-1]):\n",
    "            block[\"rho\"][:,:] += block[\"g\"][:,:,i]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "metadata": {},
   "outputs": [],
   "source": [
    "if (gravitational_acceleration != 0):\n",
    "    initialize_hydrostatic_pressure()\n",
    "    compute_density()\n",
    "    plt.scalar_field(dh.cpu_arrays[\"rho\"])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "================================= start of the simulation ===================================\n"
     ]
    },
    {
     "data": {
      "application/vnd.jupyter.widget-view+json": {
       "model_id": "1227a4e61d374ab0b4630ee22b5b35a8",
       "version_major": 2,
       "version_minor": 0
      },
      "text/plain": [
       "  0%|          | 0/238800 [00:00<?, ?it/s]"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n",
      "\n",
      "time needed for the calculation: 92.7764 seconds\n",
      "MLUPS: 6.43\n"
     ]
    }
   ],
   "source": [
    "print(\"================================= start of the simulation ===================================\")\n",
    "\n",
    "start = time.time()\n",
    "\n",
    "pbar = tqdm(total=timesteps)\n",
    "\n",
    "timestep = []\n",
    "surface_position = []\n",
    "symmetry_norm = []\n",
    "\n",
    "for i in range(0, timesteps):\n",
    "    \n",
    "    sum_c_2 = 0.0\n",
    "    sum_delta_c_2 = 0.0\n",
    "    \n",
    "    # write vtk output\n",
    "    if(i % vtk_output_frequency == 0):\n",
    "        if gpu:\n",
    "            dh.to_cpu(\"C\")\n",
    "            dh.to_cpu(\"u\")\n",
    "            dh.to_cpu(\"rho\")\n",
    "        vtk_writer(i)\n",
    "    \n",
    "    # extract data (to be written to file)\n",
    "    if(i % data_extract_frequency == 0):\n",
    "        if gpu:\n",
    "            dh.to_cpu(\"C\")\n",
    "            dh.to_cpu(\"u\")\n",
    "            dh.to_cpu(\"rho\")\n",
    "            \n",
    "        pbar.update(data_extract_frequency)\n",
    "            \n",
    "        timestep.append(i)\n",
    "        \n",
    "        ny = domain_size[1]\n",
    "\n",
    "        # get index containing phase field value < 0.5\n",
    "        i1 = np.argmax(dh.cpu_arrays[\"C\"][int(domain_size[0] * 0.5), :] < 0.5)\n",
    "        i0 = i1 - 1 # index containing phase field value >= 0.5    \n",
    "\n",
    "        f0 = dh.cpu_arrays[\"C\"][int(domain_size[0] * 0.5), i0] # phase field value >= 0.5\n",
    "        f1 = dh.cpu_arrays[\"C\"][int(domain_size[0] * 0.5), i1] # phase field value < 0.5\n",
    "\n",
    "        # coordinate of cell center is index+0.5-1 (0.5 to get to cell center; -1 to remove ghost layer from index)\n",
    "        y0 = i0 + 0.5 - 1\n",
    "        y1 = i1 + 0.5 - 1\n",
    "\n",
    "        #interpolate\n",
    "        surface_position.append( y0 + (y1 - y0) / (f1 - f0) * (0.5 - f0) )\n",
    "        \n",
    "        # evaluate symmetry in x-direction\n",
    "        for y in range(0, domain_size[1] - 1):\n",
    "            for x in range(0, domain_size[0] - 1):\n",
    "                if (x >= domain_size[0] * 0.5):\n",
    "                    continue\n",
    "                    \n",
    "                x_mirrored = domain_size[0] - 1 - x;\n",
    "                sum_c_2 += dh.cpu_arrays[\"C\"][x, y]**2\n",
    "                sum_delta_c_2 += (dh.cpu_arrays[\"C\"][x, y] - dh.cpu_arrays[\"C\"][x_mirrored, y])**2\n",
    "                \n",
    "        symmetry_norm.append( (sum_delta_c_2 / sum_c_2)**2 )\n",
    "        \n",
    "    timeloop()\n",
    "\n",
    "pbar.close()\n",
    "end = time.time()\n",
    "sim_time = end - start\n",
    "print(\"\\n\")\n",
    "print(\"time needed for the calculation: %4.4f\" % sim_time , \"seconds\")\n",
    "\n",
    "nrOfCells = np.prod(domain_size)\n",
    "mlups = nrOfCells * timesteps / sim_time * 1e-6\n",
    "\n",
    "print(\"MLUPS: %4.2f\" % mlups)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 28,
   "metadata": {
    "scrolled": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.image.AxesImage at 0x146e329a0>"
      ]
     },
     "execution_count": 28,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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AOBiCU8AAABGCU8AAABGCU8AAABG7eaqtgAr5VD5nRoAwIuJd2cAAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACMEp4AAACM2jE8q+pDVXW+qr64bd/VVfVgVT26uH317JgAAACsqt2c8fx3SW57zr57k5zp7mNJziy2AQAA4Hl2DM/u/q0k/+M5u29Pcmpx/1SSO/Z3LAAAANbFpX7H87ruPpcki9trX+jAqrqnqs5W1dnNzc1LfDkAAABW1fjFhbr7ZHcf7+7jGxsb0y8HAADAi8ylhufTVXU4SRa35/dvJAAAANbJpYbn6SQnFvdPJHlgf8YBAABg3ezmz6n8apLfTvIjVfVUVd2d5L4kt1bVo0luXWwDAADA81yx0wHd/Y4XeOiWfZ4FAACANTR+cSEAAAAONuEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAKOEJAADAqD2FZ1XdVlVfrqrHqure/RoKAACA9XHJ4VlVh5L8cpK3JLkxyTuq6sb9GgwAAID1sJcznjcleay7H+/u7yT5SJLb92csAAAA1sVewvP6JF/Ztv3UYh8AAAD8P3sJz7rAvn7eQVX3VNXZqjq7ubm5h5cDAABgFe0lPJ9KcsO27SNJvvrcg7r7ZHcf7+7jGxsbe3g5AAAAVtFewvMzSY5V1Wuq6qokdyU5vT9jAQAAsC6q+3mfjt39k6t+Ksn7khxK8qHu/mc7HL+Z5I8u+QX33zVJvrbsIbisrPnBY80PJut+8Fjzg8m6HzzW/MXvL3b38z7quqfwXHVVdba7jy97Di4fa37wWPODybofPNb8YLLuB481X117+agtAAAA7Eh4AgAAMOqgh+fJZQ/AZWfNDx5rfjBZ94PHmh9M1v3gseYr6kB/xxMAAIB5B/2MJwAAAMMObHhW1T+uqq6qa7bte09VPVZVX66qv7PM+dhfVfUvqur3q+r3quoTVfWqbY9Z9zVVVbct1vWxqrp32fOw/6rqhqr6L1X1SFV9qarevdh/dVU9WFWPLm5fvexZ2V9VdaiqPldVn1xsW/M1V1WvqqqPLf5//khV/XXrvt6q6h8tfrZ/sap+tapeZs1X14EMz6q6IcmtSZ7ctu/GJHcl+StJbkvyb6rq0HImZMCDSV7X3X81yR8keU9i3dfZYh1/OclbktyY5B2L9Wa9PJPk57v7R5O8Kcm7Fut8b5Iz3X0syZnFNuvl3Uke2bZtzdff+5P8Rnf/5SSvz9b6W/c1VVXXJ/mHSY539+uSHMrWezZrvqIOZHgm+VdJfiHJ9i+43p7kI939Z939h0keS3LTMoZj/3X3p7r7mcXm7yQ5srhv3dfXTUke6+7Hu/s7ST6SrfVmjXT3ue7+7OL+t7L1RvT6bK31qcVhp5LcsZQBGVFVR5L8dJIPbNttzddYVf1gkr+Z5INJ0t3f6e5vxrqvuyuS/EBVXZHk5Um+Gmu+sg5ceFbV25L8cXf/7nMeuj7JV7ZtP7XYx/r5e0n+4+K+dV9f1vaAqaqjSd6Y5KEk13X3uWQrTpNcu8TR2H/vy9YvkL+3bZ81X2+vTbKZ5N8uPmL9gap6Raz72uruP07yL7P1CcVzSf5nd38q1nxlXbHsASZU1X9O8kMXeOgXk7w3yU9e6GkX2OeSvyvk/7fu3f3A4phfzNZH8z78/add4Hjrvh6s7QFSVa9M8utJfq67/7TqQsvPOqiqtyY5390PV9XfWvI4XD5XJPnxJD/b3Q9V1fvjI5ZrbfHdzduTvCbJN5P8WlW9c6lDsSdrGZ7d/eYL7a+qH8vWf7y/u3hTciTJZ6vqpmydDblh2+FHsnU6nxXxQuv+fVV1Islbk9zSf/53hKz7+rK2B0RVXZmt6Pxwd398sfvpqjrc3eeq6nCS88ubkH12c5K3VdVPJXlZkh+sql+JNV93TyV5qrsfWmx/LFvhad3X15uT/GF3byZJVX08yd+INV9ZB+qjtt39he6+truPdvfRbP0Q+/Hu/pMkp5PcVVUvrarXJDmW5L8tcVz2UVXdluSfJHlbd39720PWfX19JsmxqnpNVV2VrQsSnF7yTOyz2vot4geTPNLdv7TtodNJTizun0jywOWejRnd/Z7uPrL4//hdSX6zu98Za77WFu/VvlJVP7LYdUuS/x7rvs6eTPKmqnr54mf9Ldn6Hr81X1FrecbzUnT3l6rq/mz9EHsmybu6+7tLHov986+TvDTJg4uz3b/T3X/fuq+v7n6mqv5Bkv+UrSvhfai7v7Tksdh/Nyf5mSRfqKrPL/a9N8l9Se6vqruz9eblzuWMx2Vkzdffzyb58OKXiY8n+bvZOoli3dfQ4iPVH0vy2Wy9R/tckpNJXhlrvpLqzz9xCAAAAPvvQH3UFgAAgMtPeAIAADBKeAIAADBKeAIAADBKeAIAADBKeAIAADBKeAIAADBKeAIAADDq/wL9JMkktIBkAQAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 1152x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "if gpu:\n",
    "    dh.to_cpu(\"C\")\n",
    "    dh.to_cpu(\"u\")\n",
    "    dh.to_cpu(\"rho\")\n",
    "\n",
    "plt.scalar_field(dh.cpu_arrays[\"C\"])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 29,
   "metadata": {},
   "outputs": [],
   "source": [
    "# non-dimensionalize time and surface position\n",
    "t_nd = [value * wave_frequency for value in timestep]\n",
    "a_nd = [(value - fluid_depth) / amplitude for value in surface_position]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 30,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA8YAAAF7CAYAAAAQWpJDAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjQuMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/MnkTPAAAACXBIWXMAAAsTAAALEwEAmpwYAABwPUlEQVR4nO3ddXjd5f3/8ecdd3epu7thhVLcZcjYGIzxhbEx2H7b2JgwV8ZgQwaM4TCcbkCLe6HU3S2NuzZ67t8f56QLpZbmyOecvB7XlSvJOR95J3fa5HVuM9ZaRERERERERPqrsEAXICIiIiIiIhJICsYiIiIiIiLSrykYi4iIiIiISL+mYCwiIiIiIiL9moKxiIiIiIiI9GsKxiIiIiIiItKvRQS6ACfJyMiwgwYNCnQZB+VyuQAIC9PrGU6hNnEmtYvzqE2cSe3iPGoTZ1K7OI/axJmCoV2WLVtWZa3N3P9xBeMeBg0axNKlSwNdxkE1NjYCkJiYGOBKpJvaxJnULs6jNnEmtYvzqE2cSe3iPGoTZwqGdjHG7DrQ486N8iIiIiIiIiJ+oGAsIiIiIiIi/ZqCsYiIiIiIiPRrCsYiIiIiIiLSrykYi4iIiIiISL+mYCwiIiIiIiL9moKxiIiIiIiI9GsKxiIiIiIiItKvKRiLiIiIiIhIv+boYGyMecgYU2GMWXuQ540x5i5jzFZjzGpjzJQez51mjNnkee4W/1UtIiIiIiIiwcTRwRh4GDjtEM+fDgz3vF0L3AtgjAkH7vY8Pwa4zBgzxqeVioiIiIiISFCKCHQBh2Ktfd8YM+gQh5wLPGqttcAnxpgUY0wuMAjYaq3dDmCMedpz7PpD3c/lctHY2OiV2r3NWssLCxczb87YQJciPTj156W/U7s4j9rEmdQuzqM2cSa1i/OoTZwpmNvF6T3Gh5MPFPX4fI/nsYM9/gXGmGuNMUuNMUurqqp8VmhffbRsE7fd9QLf/sWjNDTtDXQ5IiIiIiIiIcPRPcZHwBzgMXuIx7/4oLX3A/cDTJs2zSYmJnqvOi86be40fv3dRn7yl3+z4K3lXH/FoUaYi7859eemv1O7OI/axJnULs6jNnEmtYvzqE2cKRjbJdh7jPcAhT0+LwBKDvF40DLGcO786UwZO5hnX/0Y9+hxERERERER6atgD8YLgK96VqeeBdRba0uBz4DhxpjBxpgo4FLPsUHvvPnT2b67nJXrdwa6FBERERERkZDg6GBsjHkKWAyMNMbsMcZ83RhznTHmOs8hrwLbga3AA8A3Aay1ncC3gEXABuAZa+06v38BPnDSnHEYY3jv0wPuYCUiIiIiIiK95Og5xtbayw7zvAVuOMhzr+IOziElOTGOcSMK+Xj5Jm66+uxAlyMiIiIiIhL0HN1jLAc2Z+ooVqzdzt7W9kCXIiIiIiIiEvQUjIPQ7Ckj6ejsYtmabYEuRUREREREJOgpGAehyWMGA7B6464AVyIiIiIiIhL8FIyDUHJSPAW56azfWhToUkRERERERIKegnGQGjOskPWbFYxFRERERET6SsE4SI0dUciOPRU0t7QGuhQREREREZGgpmAcpMYOL8Ray8ZtxYEuRUREREREJKgpGAepUcMKANi0XcFYRERERESkLxSMg1ReViox0ZFs310e6FJERERERESCmoJxkAoLC2NQQTbbixSMRURERERE+kLBOIgNHZCtHmMREREREZE+UjAOYkMGZLO7pJK29o5AlyIiIiIiIhK0FIyD2JAB2bhclt3FlYEuRUREREREJGgpGAexIQNyANim4dQiIiIiIiJHTcE4iA3KzwSgqKQqwJWIiIiIiIgELwXjIJacFE9iQixFpQrGIiIiIiIiR0vBOMgV5mYoGIuIiIiIiPSBgnGQK8xNp6i0OtBliIiIiIiIBC0F4yBXmJvBntIqrLWBLkVERERERCQoKRgHucK8DFrbOqisaQh0KSIiIiIiIkFJwTjIFeZmAGiesYiIiIiIyFFSMA5yhbnpAOwp0TxjERERERGRo6FgHORys9MAKKuqDXAlIiIiIiIiwUnBOMglxMWQEBdDaUVdoEsREREREREJSgrGISAnK5XyqrpAlyEiIiIiIhKUFIxDQE5GCqUVGkotIiIiIiJyNBSMQ0BOVop6jEVERERERI6SgnEIyMlIoaK6nq4uV6BLERERERERCToKxiEgJyuVri4XVbUNgS5FREREREQk6CgYh4CcjBQAzTMWERERERE5CgrGISAnKxWAssq6wBYiIiIiIiIShBSMQ0BOZgoAZZXqMRYREREREektRwdjY8xpxphNxpitxphbDvD8940xKz1va40xXcaYNM9zO40xazzPLfV/9f6TlpxAVGSEeoxFRERERESOQkSgCzgYY0w4cDcwH9gDfGaM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919IiBs1xL3K9KbtpQc9xuVysX7LHsaMKPBXWSIiIiIiIl4TsB5ja+3JB3vOGFNujMn19BbnAhWHuNTpwHJrbXmPa+/72BjzAPDfQ9RxP3A/wLRp02xiYmIvvorA8GeNk8cNxxjDzuKqg953664ymve2MXX8cL/W5iT99et2OrWL86hNnEnt4jxqE2dSuziP2sSZgrFdnDrHeAFwpefjK4GXD3HsZew3jNoTprudD6z1anX9SFxsNIMLs1i7afdBj1mzcScAE0YN9FNVIiIiIiIi3uPUYPx7YL4xZgsw3/M5xpg8Y8y+FaaNMXGe51/Y7/w/GmPWGGNWAycCN/un7NA0ZdwQlq/bftAFuFZv3EVsTBRDB+T4uTIREREREZG+c+TiW9baatwrTe//eAlwRo/PW4AvrAhlrf2KTwvsZ6aNH8Zzry5me1H5AcPv8rXbGT9yABER4QGoTkREREREpG+c2mMsDjJtwjAAlq7e+oXn6htbWLNpF7OmjPR3WSIiIiIiIl6hYCyHNXRANqnJ8SxZ9cVg/OnKzbhcljlTRgWgMhERERERkb5TMJbDMsYwZ+oo3vtkLV1drs899/GyTcRERzJ57OAAVSciIiIiItI3CsZyRE49fjJVtY2sWLd932Mul4s3PlzFzEkjiI6KDGB1IiIiIiIiR0/BWI7IibPHERkRzsL3Vux7bMmqrRSXVXP+qTMDWJmIiIiIiEjfKBjLEUmMj+WkOeN59tWPaWzeC8Azr3xEfGw0pxw3KbDFiYiIiIiI9IGCsRyxb331DOobW7j38YUsX7udFxd9ypfOOoa42OhAlyYiIiIiInLUHLmPsTjT+FEDOe+UGdzz2EIeeOoNsjOS+e415wS6LBERERERkT5RMJZe+fOPv8bwwXlU1TRw5YUnkhgfG+iSRERERERE+kTBWHolIiKcG75yeqDLEBERERER8RrNMRYREREREZF+TcFYRERERERE+jUFYxEREREREenXFIxFRERERESkX1MwFhERERERkX5NwVhERERERET6NQVjERERERER6dcUjEVERERERKRfUzAWERERERGRfk3BWERERERERPo1BWMRERERERHp1xSMRUREREREpF9TMBYREREREZF+zVhrA12DYxhjKoFdga7jMDKAqkAXIZ+jNnEmtYvzqE2cSe3iPGoTZ1K7OI/axJmc3i4D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\n",
      "text/plain": [
       "<Figure size 1152x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# plot surface position over time\n",
    "plt.xlabel('$t/-$', fontsize=18)\n",
    "plt.ylabel('$a/-$', fontsize=18)\n",
    "plt.grid(color='black', linestyle='-', linewidth=0.1)\n",
    "plt.plot(t_nd, a_nd, color=(0.121, 0.231, 0.4))\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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hw7l5ZdfbvQ1NeSll15i8ODBDB06lCuvvBKA/Px8Lr74YoYOHcr48ePZsWPHafvddtttJyXpNa34999/PytXrmT48OH85z//YdmyZcyaNavR4z766KPcfPPNJCUl0bt373oT6S+++IK//vWvALz44ov07t0bgEOHDnHWWWcBJ1rg77//fsrLyxk+fDjXXHNN7ft1yy23MGTIEM4991zKy8tPO0dWVhazZ89m2LBhDBs2jDVr1gDw/PPPk5CQQEJCAi+88AKg/+wNGjSIP/7xj4wcOZKVK1ee9Dw1NZVnn32WMWPGMHTo0JOu+3//+1+GDh3KsGHDuO6661izZg0LFizgnnvuYfjw4Rw6dOikFv5ff/2VESNGkJiYyM0330xlZSUAcXFxPPLII4wcOZLExET2799/2ms699xzyc7OZvjw4axcuZK3336bMWPGMGzYMC699FLKysoafO2n/vxpmsY999xDQkICiYmJfP755wAsW7aMadOmcfXVV5OYmHhaDC0hVam7uD49RkAqpBekuDoUIYQQQohO8/SGp9mbv7ddjzkweCD3jb2vVftu27aNrVu3YrFYGDBgAHfccQdeXl48/vjjLF68GB8fH55++mmef/55Hn74YebOncvDDz8MwHXXXcf333/Pb3/7W0BvLVu+fPnp8Q0cyIoVKzCZTCxevJgHHniAr776qsHz9+zZkyeeeILg4GAcDgfTp09nx44dDB06tPaYV155JUOHDuWZZ57BbDYzb9483nzzTfz8/Ni1axfbtm0D9GSsxltvvcWRI0fYunUrJpOJ/Px8gEZfU32eeuopjhw5gsViobCwEIBHHnmEESNG8M0337BkyRKuv/762hia8tRTT/Hcc8/x/fffA3rSVKOx4+7du5elS5dSUlLCgAEDuP322zGbzbX7TpkyhWeffRaAlStXEhISQnp6OqtWrWLy5MmnxfDKK6+c9L4dOHCATz/9lLfffpvf/e53fPXVV1x77bUn7XfnnXcydepU5s+fj8PhwGq1snnzZubNm8f69evRNI1x48YxdepUgoKC2LdvH/PmzeO1114jJSXlpOeLFi3iwIEDbNiwAU3TuPDCC1mxYgUhISE88cQTrF69mtDQUPLz8wkODubCCy9k1qxZp3WVr6io4MYbb+TXX3+lf//+XH/99bz++uv85S9/ASA0NJQtW7bw2muv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\n",
      "text/plain": [
       "<Figure size 1152x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# plot analytical solutions\n",
    "\n",
    "# analytical model from Prosperetti, Motion of two superposed viscous fluids, 1981, doi: 10.1063/1.863522\n",
    "nu = kinematic_viscosity_heavy\n",
    "k = wavenumber\n",
    "omega_0 = wave_frequency\n",
    "rho_u = density_heavy\n",
    "rho_l = density_light\n",
    "a0 = amplitude\n",
    "beta = rho_l * rho_u / (rho_l + rho_u)**2\n",
    "\n",
    "k2nu = k**2 * nu # helper variable\n",
    "\n",
    "# polynomials from equation (21)\n",
    "p0 =  (1 - 4 * beta) * k2nu**2 + omega_0**2\n",
    "p1 =  4 * (1 - 3 * beta) * k2nu**1.5\n",
    "p2 =  2 * (1 - 6 * beta) * k2nu\n",
    "p3 = -4 * beta * k2nu**(0.5)\n",
    "p4 =  1\n",
    "p = [p0, p1, p2, p3, p4]\n",
    "\n",
    "# get roots of equation (21)\n",
    "z = np.polynomial.polynomial.polyroots(p)\n",
    "\n",
    "Z = np.array([(z[1]  - z[0]) * (z[2] - z[0]) * (z[3] - z[0]),\n",
    "              (z[0]  - z[1]) * (z[2] - z[1]) * (z[3] - z[1]),\n",
    "              (z[0]  - z[2]) * (z[1] - z[2]) * (z[3] - z[2]),\n",
    "              (z[0]  - z[3]) * (z[1] - z[3]) * (z[2] - z[3])])\n",
    "\n",
    "t = np.arange(0, timesteps, 1)\n",
    "\n",
    "# equation (20)\n",
    "tmp0 = (1 - 4 * beta) * k2nu**2 # helper variable\n",
    "term0 = 4 * tmp0 / (8 * tmp0 + omega_0**2) * a0 * erfc((k2nu * t)**0.5) # first term in equation (20)\n",
    "\n",
    "term1 = 0.0\n",
    "for i in range(0, 4, 1):\n",
    "    tmp1 = z[i]**2 - k2nu # helper variable\n",
    "    term1 += z[i] / Z[i] * omega_0**2 * a0 / tmp1 * np.exp(tmp1 * t) * erfc(z[i] * t**0.5)\n",
    "\n",
    "a = np.real(term0 + term1)\n",
    "\n",
    "# non-dimesionalize time and surface position\n",
    "pos_anal_lin_org = a / a0\n",
    "t_anal_org = t * omega_0\n",
    "\n",
    "# non-dimesionalize time and surface position\n",
    "a_anal_nd = a / amplitude\n",
    "t_anal_nd = t * wave_frequency\n",
    "\n",
    "plt.plot(t_anal_nd, a_anal_nd, label=\"analytical solution\")\n",
    "plt.plot(t_nd, a_nd, label=\"simulation\")\n",
    "\n",
    "# correction factor from Denner et al., Dispersion and viscous attenuation of capillary waves with finite amplitude, 2016, doi: 10.1140/epjst/e2016-60199-2\n",
    "# model is now valid for initial amplitudes of about 0.1*wavelength\n",
    "a0_hat = a0 / wavelength\n",
    "C = -4.5 * a0_hat**3 + 5.3 * a0_hat**2 + 0.18 * a0_hat + 1\n",
    "a_anal_nd_corr = a_anal_nd * C\n",
    "t_anal_nd_corr = t_anal_nd * C\n",
    "plt.plot(t_anal_nd_corr, a_anal_nd_corr, label=\"linear analytical solution with correction factor\")\n",
    "\n",
    "plt.xlabel('$t/-$', fontsize=18)\n",
    "plt.ylabel('$a/-$', fontsize=18)\n",
    "plt.legend()\n",
    "plt.grid()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 32,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1152x432 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# plot symmetry norm over time\n",
    "plt.xlabel('$t/-$', fontsize=18)\n",
    "plt.ylabel('$symmetry-norm/-$', fontsize=18)\n",
    "plt.grid(color='black', linestyle='-', linewidth=0.1)\n",
    "plt.plot(t_nd, symmetry_norm, color=(0.121, 0.231, 0.4))\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "metadata": {},
   "outputs": [],
   "source": [
    "# store results to file\n",
    "import csv\n",
    "with open(filename, 'w') as f:\n",
    "    writer = csv.writer(f, delimiter='\\t')\n",
    "    writer.writerows(zip(t_nd, a_nd, symmetry_norm))"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.9"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}