diff --git a/src/lbmpy/creationfunctions.py b/src/lbmpy/creationfunctions.py
index b997b3898e6454ac3a6a9241eaa83bc1ab7a23b1..ebac5b2fa8ebd4ea8cbc36b52ef3254d94dae8d5 100644
--- a/src/lbmpy/creationfunctions.py
+++ b/src/lbmpy/creationfunctions.py
@@ -469,7 +469,7 @@ class LBMConfig:
         }
 
         if self.psm_config is not None and self.psm_config.fraction_field is not None:
-            self.force = [(1.0 - self.psm_config.fraction_field.center) * f for f in self.force]
+            self.force = [(1.0 - self.psm_config.fraction_field_symbol) * f for f in self.force]
 
         if isinstance(self.force_model, str):
             new_force_model = ForceModel[self.force_model.upper()]
@@ -784,7 +784,7 @@ def create_lb_method(lbm_config=None, **params):
     if lbm_config.psm_config is None:
         fraction_field = None
     else:
-        fraction_field = lbm_config.psm_config.fraction_field
+        fraction_field = lbm_config.psm_config.fraction_field_symbol
 
     common_params = {
         'compressible': lbm_config.compressible,
diff --git a/src/lbmpy/methods/creationfunctions.py b/src/lbmpy/methods/creationfunctions.py
index 01cd85c61fdb0d1b71efaaf280d57d0df420c02b..eece583fb2e19c569882abfa4b3d6938667d6a65 100644
--- a/src/lbmpy/methods/creationfunctions.py
+++ b/src/lbmpy/methods/creationfunctions.py
@@ -372,7 +372,7 @@ def create_central_moment(stencil, relaxation_rates, nested_moments=None,
 
     rr_dict = _get_relaxation_info_dict(relaxation_rates, nested_moments, stencil.D, conserved_moments)
     if fraction_field is not None:
-        relaxation_rates_modifier = (1.0 - fraction_field.center)
+        relaxation_rates_modifier = (1.0 - fraction_field)
         rr_dict = _get_relaxation_info_dict(relaxation_rates, nested_moments, stencil.D,
                                             relaxation_rates_modifier=relaxation_rates_modifier)
 
@@ -548,7 +548,7 @@ def create_cumulant(stencil, relaxation_rates, cumulant_groups, conserved_moment
     cumulant_to_rr_dict = _get_relaxation_info_dict(relaxation_rates, cumulant_groups, stencil.D, conserved_moments)
 
     if fraction_field is not None:
-        relaxation_rates_modifier = (1.0 - fraction_field.center)
+        relaxation_rates_modifier = (1.0 - fraction_field)
         cumulant_to_rr_dict = _get_relaxation_info_dict(relaxation_rates, cumulant_groups, stencil.D,
                                                         relaxation_rates_modifier=relaxation_rates_modifier)
 
diff --git a/src/lbmpy/methods/momentbased/momentbasedmethod.py b/src/lbmpy/methods/momentbased/momentbasedmethod.py
index 740834072a0210772d407a7e441b9e1ef46d0f7a..1168889e89d27e8cac54ea3d4fb624f5c82e51c9 100644
--- a/src/lbmpy/methods/momentbased/momentbasedmethod.py
+++ b/src/lbmpy/methods/momentbased/momentbasedmethod.py
@@ -177,7 +177,7 @@ class MomentBasedLbMethod(AbstractLbMethod):
                            pre_simplification: bool = True) -> LbmCollisionRule:
 
         if self.fraction_field is not None:
-            relaxation_rates_modifier = (1.0 - self.fraction_field.center)
+            relaxation_rates_modifier = (1.0 - self.fraction_field)
             rr_sub_expressions, d = self._generate_symbolic_relaxation_matrix(
                 relaxation_rates_modifier=relaxation_rates_modifier)
         else:
diff --git a/src/lbmpy/partially_saturated_cells.py b/src/lbmpy/partially_saturated_cells.py
index 963d55a2c6416d1226eb48f14989d8a196a7126c..1a66f4456203825faa5e198346d90c8eaf5fa41d 100644
--- a/src/lbmpy/partially_saturated_cells.py
+++ b/src/lbmpy/partially_saturated_cells.py
@@ -13,6 +13,11 @@ class PSMConfig:
     Fraction field for PSM 
     """
 
+    fraction_field_symbol = sp.Symbol('B')
+    """
+    Fraction field symbol used for simplification 
+    """
+
     object_velocity_field: Field = None
     """
     Object velocity field for PSM 
@@ -98,6 +103,10 @@ def get_psm_force_from_solid_collision(solid_collisions, stencil, object_force_f
     return AssignmentCollection(force_assignments)
 
 
+def replace_fraction_symbol_with_field(psm_config, assignment):
+    return assignment.subs(psm_config.fraction_field_symbol, psm_config.fraction_field.center(0))
+
+
 def add_psm_solid_collision_to_collision_rule(collision_rule, psm_config, particle_per_cell_counter):
 
     method = collision_rule.method
@@ -131,7 +140,8 @@ def replace_by_psm_collision_rule(collision_rule, psm_config):
                                                                         psm_config.object_force_field, p)
 
     for i, main in enumerate(collision_rule.main_assignments):
-        rhs = main.rhs
+        rhs = replace_fraction_symbol_with_field(psm_config, main.rhs)
+
         for p in range(psm_config.max_particles_per_cell):
             rhs += solid_collisions[p][i]
         collision_assignments.append(Assignment(main.lhs, rhs))