def METHOD_NAME(param_b, param_m, param_b_f, param_b_i):
	# gammaP is the deviatoric plastic strain
	# param_b = gammaP/(c + gammaP) * (param_b_f - param_b_i) + param_b_i
	# that yields: gammaP/(c + gammaP) = (param_b-param_b_i)/(param_b_f - param_b_i)
	# or c/(c + gammaP) = (param_b_f-param_b)/(param_b_f - param_b_i)
	# The derivative of the hardening law gives: dparam_bdGammaP = (param_b_f-param_b_i)c/(c + gammaP)**2
	# or dparam_bdGammaP = (param_b_f-param_b)**2/(param_b_f - param_b_i)/c
	# Finally dBetadGammaP = cos2Beta*(param_b_f-param_b)**2/(param_b_f - param_b_i)/c
	# Validation against Chen and Abousleiman 2017
	# h = -dFdbeta*dBetadGammaP
	# h = p*(param_b_f-param_b)**2/(param_b_f - param_b_i)/c
	# y = 1/h = c(param_b_f - param_b_i)p/(p*param_b_f - q)**2.0 that is identical to Chen and Abousleiman 2017
	cos2Beta = 1.0/(param_b**2+1.0)
	return cos2Beta*(param_b_f-param_b)**2/(param_b_f - param_b_i)/param_m