## Approximate Methods: The Weighted Residuals Method

The statement of the equilibrium equations applied to a set is as follows. Assuming that at equilibrium is the symmetric Cauchy stress distribution on and that is the displacement vector distribution and knowing the relationship , then the equilibrium equation seeks to find such that the associated \sigma satisfies the equation:

where is the body forces vector distribution on , is the mass density, and is the space of all possible displacement functions applied to , i.e., . The term “Kinematically admissible” in indicates that the space of possible solutions must satisfy the boundary conditions imposed on (as stated below) and any differentiability constraints.

The boundary conditions for the equations of equilibrium are usually given on two parts of the boundary of denoted . On the first part, , the external traction vectors are known so we have the boundary conditions for since ( is the normal vector to the boundary). On the second part, , the displacement is given.

The weighted residuals method seeks an approximate solution with a particular form that has a finite number of unknown parameters. Since does not necessarily satisfy the requirements for the problem, the corresponding stresses would not satisfy equilibrium. The residuals are defined as the resulting values when the approximate solutions are substituted in the differential equation:

If is the number of unknown parameters in then weight functions can be chosen. For each , an integral form of the residuals is set to zero:

(1)

The form of should be chosen satisfying the essential boundary conditions while the non-essential boundary conditions can be imposed in a variety of ways. There are two ways that the non-essential boundary conditions can be imposed. In the first one, if is the imposed boundary conditions on the boundary , then, the residual is first defined and the boundary condition is incorporated by setting

Alternatively, the non-essential boundary conditions are incorporated directly in Equation 1 using integration by parts as will be shown later.

### The Weighted Residuals Methods

Assuming , where is a known function and is an unknown parameters, the weighted residuals methods vary in the choice of the weight functions . The following is a list of possible choices for :

#### Least Squares Method

In the least squares method, the weight functions is chosen such that

The least squares method is effectively minimizing the squares of the residuals:

#### Point Collocation Method

The Point Collocation Method described before is a special case where points are chosen such that and the weight functions are chosen such that :

#### Sub-Domain Method

In this method, sub-domains are chosen such that and the weight functions are chosen such that :

#### Galerkin Method

In the Galerkin method, the weight functions is chosen such that

The Galerkin method is effectively the virtual work method.

### Example

Using a polynomial trial function of the third degree, find the displacement function of the shown bar using the Galerkin method. Assume that the bar is linear elastic with Young’s modulus E and cross-sectional area A and that the small strain tensor is the appropriate measure of strain. Ignore the effect of Poisson’s ratio.

##### Exact Solution

The exact solution can be obtained by directly solving the differential equation of equilibrium utilizing :

with the boundary conditions: . Therefore:

View Mathematica Code

DSolve[{u''[X1] == -c*X1/EA, u'[L] == 0, u[0] == 0}, u[X1], X1]


View Python Code

from sympy import *
import sympy as sp
sp.init_printing(use_latex = "mathjax")
u, c, EA, x, L = symbols("u c EA x L")
u = Function("u")
u1 = u(x).subs(x,0)
u2 = u(x).diff(x).subs(x,L)
sol = dsolve(u(x).diff(x,2)+c*x/EA, u(x), ics = {u1:0, u2:0})
display(sol)

##### Approximation Solution

The approximate solution has the form:

There is one essential boundary condition which is , therefore, . The approximate solution thus has the following form which satisfies the essential boundary conditions:

where , and are the known functions and , and are the unknown parameters. The residuals have the form:

The Galerkin method aims at setting the weighted residuals to zero:

Rearranging:

Integration by parts of the left hand side can be used to incorporate the nonessential boundary conditions as follows:

Therefore, the Galerkin method equations now have the form:

To find the unknowns , and , three equations are formed with , and . Solving those three equations the following approximate solution is obtained:

Notice that since the exact solution (a polynomial of the third degree) is an element of the space of possible approximate solutions, the Galerkin method yields the exact solution!

View Mathematica Code

w1=x1;
w2=x1^2;
w3=x1^3;
u=a1*w1+a2*w2+a3*w3;
Eq1=Integrate[D[w1,x1]*D[u,x1],{x1,0,L}]-Integrate[w1*c*x1/EA,{x1,0,L}];
Eq2=Integrate[D[w2,x1]*D[u,x1],{x1,0,L}]-Integrate[w2*c*x1/EA,{x1,0,L}];
Eq3=Integrate[D[w3,x1]*D[u,x1],{x1,0,L}]-Integrate[w3*c*x1/EA,{x1,0,L}];
s=Solve[{Eq1==0,Eq2==0,Eq3==0},{a1,a2,a3}]
u/.s[[1]]

View Python Code

from sympy import *
import sympy as sp
sp.init_printing(use_latex = "mathjax")
w, c, EA, x, L, a1, a2, a3 = symbols("w c EA x L a_1 a_2 a_3")
w1 = x
w2 = x**2
w3 = x**3
u = a1*x+a2*x**2+a3*x**3
Eq1 = integrate(w1.diff(x)*u.diff(x), (x,0,L)) - integrate(w1*c*x/EA, (x,0,L))
Eq2 = integrate(w2.diff(x)*u.diff(x), (x,0,L)) - integrate(w2*c*x/EA, (x,0,L))
Eq3 = integrate(w3.diff(x)*u.diff(x), (x,0,L)) - integrate(w3*c*x/EA, (x,0,L))
s = solve((Eq1,Eq2,Eq3), (a1,a2,a3))
u = u.subs({a1:s[a1],a2:s[a2],a3:s[a3]})
display(u)


### Problems

Solve the problems in the Rayleigh Ritz method section using the Galerkin Method.