public ResultadoIntegracionNumerica MetodoDelTrapecioMultiple(ParametroTrapecioMultiple parametro) { var h = (parametro.ValorB - parametro.ValorA) / parametro.CantSubIntervalos; var FValorA = Utilidad.EvaluarFuncion(parametro.Funcion, parametro.ValorA); var FValorB = Utilidad.EvaluarFuncion(parametro.Funcion, parametro.ValorB); double X = parametro.ValorA + h; double sumatoria = 0; while (X < (parametro.ValorB - h)) { sumatoria += Utilidad.EvaluarFuncion(parametro.Funcion, X); X += h; } double resultado = (h / 2) * (FValorA + (2 * sumatoria) + FValorB); return(new ResultadoIntegracionNumerica() { Valor = resultado }); }
private double CalcularXrReglaFalsa(double xi, double xd, string funcion) { var resultadoxi = Utilidad.EvaluarFuncion(funcion, xi); var resultadoxd = Utilidad.EvaluarFuncion(funcion, xd); return(((resultadoxd * xi) - (resultadoxi * xd)) / (resultadoxd - resultadoxi)); }