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:





(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
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
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
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.

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

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:











View Mathematica Code
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.
as one of the varities of methodsm, it is well explained …