code: protected static String getGrowthFactor(String mid, String pp, String k, String m) {
          if (compare(mid, pp, CompareMode.NOTGREATER)) {
              return m;
          } else {
              return multiply(m, exp(multiply(k, substract(mid, pp))));
          }
      }
docs: soil factors which decline exponentially between PP and RD (units depend
  on variable, same units as M (Maximum value, will use default value 1)
  
  @param mid The mid point value between two layers
  @param pp depth of top soil, or pivot point of curve (cm)
  @param k exponential decay rate
  @param m Maximum value in the top PP cm of soil (units depend on
  @return The growth factor (0-m)