From 725fc8fe10b1f2a4917527fff17d105683c0de78 Mon Sep 17 00:00:00 2001
From: Martin Bauer <martin.bauer@fau.de>
Date: Mon, 4 Feb 2019 11:08:17 +0100
Subject: [PATCH] Added tests for boyer phase field model

---
 phasefield/n_phase_boyer.py | 22 ++--------------------
 1 file changed, 2 insertions(+), 20 deletions(-)

diff --git a/phasefield/n_phase_boyer.py b/phasefield/n_phase_boyer.py
index d0d097f2..a57b98aa 100644
--- a/phasefield/n_phase_boyer.py
+++ b/phasefield/n_phase_boyer.py
@@ -296,24 +296,6 @@ def condition_variables(expression):
     return result
 
 
-def simplify_zero_conditions_old(expression, cond=True):
-    cond_vars = condition_variables(expression)
-    if not cond_vars:
-        return [(expression, cond)]
-
-    result = []
-    substitutions = {}
-    for cond_var in cond_vars:
-        zero_expr = expression.subs(cond_var, 0)
-        condition_type = sp.LessThan if cond_var.is_nonnegative else sp.Eq
-        result += simplify_zero_conditions_old(zero_expr, sp.And(cond, condition_type(cond_var, 0)))
-        substitutions[cond_var] = sp.Dummy(nonzero=True)
-
-    non_zero_expr = expression.subs(substitutions).subs({v: k for k, v in substitutions.items()})
-    result += [(non_zero_expr, cond)]
-    return result
-
-
 def simplify_zero_conditions(expression):
     cond_vars = condition_variables(expression)
     if not cond_vars:
@@ -353,7 +335,7 @@ def chemical_potential_n_phase_boyer(order_parameters, interface_width, surface_
     fe_if = free_energy_interfacial(c, sigma, a, interface_width)
 
     mu_bulk = chemical_potentials_from_free_energy(fe_bulk, order_parameters)
-    mu_bulk = sp.Matrix([simplify_zero_conditions(capital_h.insert(e)) for e in mu_bulk])
+    mu_bulk = sp.Matrix([simplify_zero_conditions(e.doit()) for e in mu_bulk])
     if zero_threshold != 0:
         substitutions = {sp.Eq(c_i, 0): sp.StrictLessThan(sp.Abs(c_i), zero_threshold) for c_i in c}
         mu_bulk = mu_bulk.subs(substitutions)
@@ -367,7 +349,7 @@ def chemical_potential_n_phase_boyer(order_parameters, interface_width, surface_
 
 
 # noinspection PyUnresolvedReferences
-def plot_h():
+def plot_h():  # pragma: no cover
     from mpl_toolkits.mplot3d import Axes3D  # noqa
     import matplotlib.pyplot as plt
     import numpy as np
-- 
GitLab