code: def water(target, temperature='pore.temperature', salinity='pore.salinity'):
      r
      T = target[temperature]
      if salinity in target.keys():
          S = target[salinity]
      else:
          S = 0
      sigma_w = 0.2358*((1-(T/647.096))**1.256)*(1-0.625*(1-(T/647.096)))
      a1 = 2.2637334337E-04
      a2 = 9.4579521377E-03
      a3 = 3.3104954843E-02
      TC = T-273.15
      sigma_sw = sigma_w*(1+(a1*TC+a2)*sp.log(1+a3*S))
      value = sigma_sw
      return value
docs: r"""
      Calculates surface tension of pure water or seawater at atmospheric
      pressure using Eq. (28) given by Sharqawy et al. Values at
      temperature higher than the normal boiling temperature are calculated at
      the saturation pressure.
  
      Parameters
      ----------
      target : OpenPNM Object
          The object for which these values are being calculated.  This
          controls the length of the calculated array, and also provides
          access to other necessary thermofluid properties.
  
      temperature : string
          The dictionary key containing the temperature values.  Temperature must
          be in Kelvin for this emperical equation to work
  
      salinity : string
          The dictionary key containing the salinity values.  Salinity must be
          expressed in g of salt per kg of solution (ppt).
  
      Returns
      -------
      sigma_sw, the surface tension of seawater in [N/m]
  
      Notes
      -----
       T must be in K, and S in g of salt per kg of phase, or ppt (parts per
          thousand)
      VALIDITY: 273 < T < 313 K; 0 < S < 40 g/kg;
      ACCURACY: 0.2 %
  
      References
      ----------
      Sharqawy M. H., Lienhard J. H., and Zubair, S. M., Desalination and
      Water Treatment, 2010.