private float addUniformForceDeflection(LineLoad load, float x, float lineLength, ref float angle, float a, float b, float c, float W, float w, float RA, float c1, float c3, float c5, float c6)
{
float flecha = 0.0f;
if (x < a)
{
flecha = RA * (float)Math.Pow(x, 3) / 6.0f + c1 * x;
angle = RA * x * x / 2f + c1;
}
else if (x >= a && x <= a + b)
{
flecha = RA * (float)Math.Pow(x, 3) / 6.0f - w * (float)Math.Pow(x - a, 4) / 24.0f + c3 * x;
angle = RA * x * x / 2f - w * (float)Math.Pow(x - a, 3) / 6.0f + c3;
}
else if (x > a + b)
{
flecha = RA * (float)Math.Pow(x, 3) / 6.0f - W * (float)Math.Pow(x - a - b / 2.0f, 3) / 6.0f + c5 * x + c6;
angle = RA * x * x / 2f - W * (float)Math.Pow(x - a - b / 2.0f, 2) / 2f + c5;
}
return flecha;
}