Home Login  |   Contact  |   About Us       Monday, March 18, 2024   

j0182018 - Back to Home
   Skip Navigation LinksHOME ›  AREAS OF EXPERTISE  #3 ›   Finite Boundary ›  ~ Finite High-Order



Skip Navigation Links.



"Boundary Value Solution"
High-Order Linear Differential Equation
X Y''


(Suggested 10 - 100)

IMPLEMENTATION
Finite Difference Method (High-Order Equation)

We have shown the finite difference method to second-order differential equations. In fact, the finite difference method is a very general numerical method for solving various types of differential equations. It can easily be applied to higher-order differential equations.

Consider the general fourth-order linear equation:

y(4) = P(x)y + Q(x)

Two boundary conditions are specified at each end of the solution domain [a, b].

Type I: y(a) = ya, y'(a) = va or
Type II: y'(a) = va, y'''(a) = ga

Many sets of boundary conditions are possible. However, one must take care when specifying boundary conditions, because some combinations of boundary conditions may not work for the fourth-order finite difference method.

For example, the combination of y(a) and y'''a or y'(a) and y''a will not work.

It is possible to solve the fourth-order linear differential equation using the method we implemented under the second-order differential equation shown before. See "Second-Order Finite Differential Equations".

Consider the following equation

y(4) = y sin x + x, y(0) = y'(0) = 0, y'(1) = 0, y'''(1) = -5

so,

P(x) = sin x, Q(x) = x

Running this example produces the results shown above. The accuracy is improved by increasing the number of mesh points. As before, we feel the user has better participation by running real-time instead of showing samples of its implementation.The reader can try variations above.

Testing the FiniteDifferenceLinear4 Method

In order to test the FiniteDifferenceLinear4 method as defined above, a new TestFiniteDifferenceLinear4() static method has been added and executed. All supporting code and methods are not shown.

           static void TestFiniteDifferenceLinear4();
              {
                 BoundaryValue bv = new BoundaryValue();
                 string strScore;
                 int intScore;
                 strScore = txtInput.Text;
                 intScore = Int32.Parse(strScore);
                 bv.xa = 0.0;
                 bv.xb = 1.0;
                 bv.ya = 0.0;
                 bv.va = 0.0;
                 bv.vb = 0.0;
                 bv.gb = -5;
                 bv.n = intScore;
                 ListBox1.Items.Clear();
                 ListBox2.Items.Clear();
                 double[] x;
                 VectorR y = bv.FiniteDifferenceLinear4(f5, out x);
                 for (int i = 0; i < x.Length; i++)
                 {
                    double t2 = x[i];
                    t1 = double.Parse(t1.ToString("#0.######"));
                    ListBox1.Items.Add(" " + t1);
                    double t2 = y[i];
                    t2 = double.Parse(t2.ToString("#0.######"));
                    ListBox2.Items.Add(" " + t2);
                 }
              }

           static VectorR f5(double x);
              {
                 VectorR result = new VectorR(2);
                 result[0] = Math.Sin(x);
                 result[1] = x;
                 return result;
              }



Other Implementations...


Object-Oriented Implementation
Graphics and Animation
Sample Applications
Ore Extraction Optimization
Vectors and Matrices
Complex Numbers and Functions
Ordinary Differential Equations - Euler Method
Ordinary Differential Equations 2nd-Order Runge-Kutta
Ordinary Differential Equations 4th-Order Runge-Kutta
Higher Order Differential Equations
Nonlinear Systems
Numerical Integration
Numerical Differentiation
Function Evaluation

   Quotes

Consulting Services - Back to Home


Home

Home Math, Analysis,
  expertise..."

EIGENVALUE
SOLUTIONS...


> Rayleigh-Quotient Method

> Cubic Spline Method

 

Applied Mathematical Algorithms

Home

ComplexFunctions

Home

NonLinear
Home

Differentiation
Home

Integration
About Us


KMP Software Engineering is an independent multidisciplinary engineering consulting company specializing in mathematical algorithms.

      (About Us) →
Areas of
Expertise


SpecialFunctions
VectorsMatrices
OptimizationMethods
ComplexNumbers
Interpolation
CurveFitting
NonLinearSystems
LinearEquations
DistributionFunctions
NumericalDifferentiation
NumericalIntegration
DifferentialEquations
Smalltalk
FiniteBoundary
Eigenvalue
Graphics
Understanding
Mining


MiningMastery
MineralNews
MineralCommodities
MineralForum
Crystallography
Services


NumericalModeling
WebServices
MainframeServices
OutsourceServices

LINKED IN
MINE REVIEW(by G.Pacheco)
Brand





Home

Login

Contact
Since 2006 All Rights Reserved  © KMP Software Engineering LINKS | PRIVACY POLICY | LEGAL NOTICE