arXiv:1501.06873v1 [] 27 Jan 2015

Truss Analysis Discussion and Interpretation
Using Linear Systems of Equalities and
Inequalities

R. Mı́nguez a,∗, E. Castillo b, R. Pruneda c, C. Solares c,
a Independent

Consultant, C/ Honduras 1, 13160 Torralba de Calatrava, Ciudad
Real, Spain

b Department
c Department

of Applied Mathematics and Computational Sciences, Univ. de
Cantabria, Spain
of Applied Mathematics, Univ. de Castilla-La Mancha, Spain

Abstract
This paper shows the complementary roles of mathematical and engineering points
of view when dealing with truss analysis problems involving systems of linear equations and inequalities. After the compatibility condition and the mathematical structure of the general solution of a system of linear equations is discussed, the truss
analysis problem is used to illustrate its mathematical and engineering multiple
aspects, including an analysis of the compatibility conditions and a physical interpretation of the general solution, and the generators of the resulting affine space.
Next, the compatibility and the mathematical structure of the general solution of
linear systems of inequalities are analyzed and the truss analysis problem revisited
adding some inequality constraints, and discussing how they affect the resulting
general solution and many other aspects of it. Finally, some conclusions are drawn.
Key words: Compatibility, cones, dual cones, linear spaces, polytopes,
simultaneous solutions, truss analysis.
PACS: D24, L60, 047

∗ Corresponding author. Tel.: + 34 926 810046.
Email addresses: rominsol@gmail.com (R. Mı́nguez), castie@unican.es (E.
Castillo), rosa.pruneda@uclm.es (R. Pruneda), cristina.solares@uclm.es (C.
Solares).

Preprint submitted to Elsevier Science

7 November 2017

1

Introduction

There are many engineering problems that involve linear systems of equalities and inequalities. Engineers are familiar with systems of equalities with a
unique solution, but many of them are not used to deal with systems of equations with multiple solutions and their interpretations. The problem is even
worse when systems of inequalities are dealt with, because only few people
know how to obtain the associated compatibility conditions and solve them.
These two types of systems can be interpreted from the mathematical or the
engineering points of view, which are complementary and provide a deep understanding of the problem under study. However, people working in these
problems use to have knowledge about only one of these two perspectives and
are unaware of the relations between the mathematical and the engineering
concepts, which leads to important limitations in the capacity of extracting
conclusions from the results that can be expected after a careful analysis of
these problems from both points of view.

This paper points out these relations and makes them explicit for the readers
to discover the new world that arises when contemplating the compatibility
conditions or the set of general solutions from this dual perspective.

In this paper, we have selected a particular example to illustrate these two
points of view, the truss analysis problem, and we exploit this dual (mathematical and engineering) perspective to deal with a problem that involves
linear systems of equalities or inequalities, depending on the constraints used
to model the reality. As we shall see, many questions of practical interest arise
and can be answered thanks to this dual analysis of the problem.

The paper is structured as follows. In Section 2 the problem of determining the
compatibility conditions of systems of linear equalities and solving them together with an analysis of the general mathematical structure of their solutions
is discussed. In Section 3 the truss analysis problem is described and used to
illustrate all the theoretical methods. In Section 4 we classify truss structures
according to some mathematical criteria in isostatic, hyperstatic, mechanism
and critical trusses. In Section 5 we discuss the compatibility of systems of linear inequalities and the mathematical structure of their solutions. In Section
6 we revisit the truss analysis problem adding some constraints to illustrate
the methodology and several engineering problems. Finally, in Section 7 some
conclusions and recommendations are given.
2

2

Dealing with Systems of Equations

In many engineering applications we find systems of linear equations of the
form:
Ax = b,

(1)

where A ∈ IR m×n , and b ∈ IR m , being m and n the number of equations
and unknowns, respectively, which can be equal or not. Before trying to solve
a system of equations of this type it is interesting to check whether or not
the system is compatible, i. e., if it has some solutions. These conditions can
be given in terms of b1 , b2 , . . . , bm , and always have a physical or engineering
meaning that raises some light about the problem under consideration.
Once the system is proven to have solution we can obtain the set of all its
possible solutions. To solve these two problems an algorithm that gives the
linear space orthogonal to the linear space generated by a set of vectors can
be used (for a detailed description of this algorithm see Castillo, Cobo, Jubete, Pruneda and Castillo [3], Castillo, Cobo, Fernández-Canteli, Jubete and
Pruneda [1], Cobo, Jubete and Pruneda [2]).

2.1 Deciding whether or not a linear system of equations is compatible

The system (1) can be written as
x1 a1 + x2 a2 + · · · + xn an = b,

(2)

which shows that the vector b = (b1 , . . . , bm )T belongs the linear space generated by the column vectors {a1 , a1 , . . . , an } of the system matrix A, i.e., the
compatibility requires:


b ∈ L(a1 , a2 , . . . , an ) ⇔ b ∈ L(a1 , a2 , . . . , an )⊥

⊥

,

where ⊥ refers to the orthogonal set. Thus, analyzing the compatibility of the
system of equations (1) reduces to finding the linear subspace L {w1 , . . . , wp }
orthogonal to L {a1 , . . . , an } and checking whether or not bT W = 0.
Example 1 (Compatibility of a linear system of equations) Suppose that
we are interested in determining the conditions under which the system of
3

equations

x1 +x2 −x3 +x4 +x5 = a
−x2 +2x3 +x4 −2x5 = b
x1 −x2 +2x3

(3)

= c

−2x1 +2x2 −3x3 +x4 −x5 = d
x1 +x2 +x3 +x4 +x5 = e
is compatible. Then, first we obtain the linear subspace orthogonal to the
linear subspace generated by the column vectors in (3) that is:
o

n

W = L {w1 } = L (0, 2, −7, −3, 1)T ,

(4)

which implies the following compatibility condition:
w1T (a, b, c, d, e)T = (0, 2, −7, −3, 1)(a, b, c, d, e)T = 0 ⇒ 2b − 7c − 3d + e = 0.
(5)

2.2 Solving a homogeneous system of linear equations
Consider the homogeneous system of equations
Ax = 0,

(6)

ai xT = 0; i = 1, . . . , m.

(7)

which can be written as

Expression (7) shows that (x1 , . . . , xn ) is orthogonal to the set of row vectors
{a1 , a2 , . . . , am } of A.
Then, obtaining the solution to system (7) reduces to determining the linear
subspace orthogonal to the linear subspace generated by the rows of matrix
A. Thus, the general solution of an homogeneous system of linear equations
is a linear space, i.e., of the form
x=

p
X

ρi vi ;

ρi ∈ IR.

i=1

Example 2 (An homogeneous system of linear equations) The system
4

of linear equations
x1

+x3 −2x4 +x5 = 0
(8)

x1 −x2 −x3 +2x4 +x5 = 0
−x1 +2x2 +2x3 −3x4 +x5 = 0
has as general solution the linear space




x1 
 
 
x2 
 
 
x 
 3
 
 
x4 
 
 

x5





=





 0 
 1 








 2 
 2 











ρ1 −3 + ρ2 −7
;








−3
−1









ρ1 , ρ2 ∈ IR.

1

0

2.3 Solving a complete system of linear equations
Now consider again the complete system of linear equations (1), that adding
the artificial variable xn+1 , can be written as
a11 x1 +a12 x2 + · · · +a1n xn −b1 xn+1 = 0,
a21 x1 +a22 x2 + · · · +a2n xn −b2 xn+1 = 0,
···

···

···

···

···

···

(9)

am1 x1 +am2 x2 + · · · +amn xn −bm xn+1 = 0,
xn+1 = 1.
The first m equations of the system (9) can be written as
(a11 , . . . , a1n , −b1 )(x1 , . . . , xn , xn+1 )T = 0,
(a21 , . . . , a2n , −b2 )(x1 , . . . , xn , xn+1 )T = 0,
·································

···

(am1 , . . . , amn , −bm )(x1 , . . . , xn , xn+1 )T = 0,
which shows that (x1 , . . . , xn , xn+1 ) is orthogonal to the set of vectors
{(a11 , . . . , a1n , −b1 ), (a21 , . . . , a2n , −b2 ), . . . , (am1 , . . . , amn , −bm )},
5

(10)

i.e., the solution of (10) is the linear subspace orthogonal to the linear subspace
generated by the rows of matrix Ab, i.e.,
L{(a11 , . . . , a1n , −b1 ), (a21 , . . . , a2n , −b2 ), . . . , (am1 , . . . , amn , −bm )}⊥ .
Thus, the solution of (1) is the projection on X1 × · · · × Xn of the intersection
of such a orthogonal linear subspace and the set {x|xn+1 = 1}. In other words,
the general solution of a complete system of linear equations is an affine space,
that is the sum of a constant vector plus a linear space:
x = x0 +

p
X

ρi vi ;

ρi ∈ IR,

i=1

where the first vector in the right hand side is an arbitrary particular solution
of the system (1), and the linear space is the set of solutions of the associated
homogeneous system.
Example 3 (A complete system of linear equations) The system of linear equations
x1

+x3 −2x4 +x5 = 1

x1 −x2 −x3 +2x4 +x5 = 2

(11)

−x1 +2x2 +2x3 −3x4 +x5 = 1
has as general solution the affine space


x1 
 
 
x2 
 
 
x 
 3
 
 
x4 
 
 

x5

3

 



=









 0 
 1 
1




 




 
 2 
 2 
1




 




 
1 + ρ1 −3 + ρ2 −7 ;




 




 




 
−3
−1
1




 




 

1

ρ1 , ρ2 ∈ IR.

1

0

The Truss Analysis Problem

Consider the engineering problem of structures consisting of trusses, i.e., structures made of bars joined by frictionless hinges which imply that only tension
or compression stresses exist in the bars. A typical truss structure is shown in
Figure 1.
With reference to the bar element (see Figure 2) that has length L and crosssection A, let us first establish the stiffness k. By definition, the force N is
6

5
4

3
y
2

3

1

4/5

4

2

1

x

4/5
3/5

Fig. 1. Two-dimensional truss structure consisting of bars joined by frictionless
hinges.
u'i

u'j

i

j

N

N

x'

L

Fig. 2. Loads acting on an individual bar.

related to the normal stress σ as
N = Aσ,

(12)

and assuming that the bar behavior is linearly elastic, according to Hooke’s
law, we have
σ = Eǫ,
(13)
where E is the Young’s modulus and ǫ is the longitudinal strain, that is assumed constant along its length, and has value
ǫ=

u′j − u′i
,
L

(14)

where u′i and u′j are the longitudinal displacements of the end points i and j,
respectively.
Combining Equations (12)-(14) we obtain
N = k(u′j − u′i ),

(15)

where k = AE/L is the bar stiffness.
To calculate a given truss structure first we need to know the behavior of
a single bar in an arbitrary direction. Thus, consider the bar shown in Figure 3 (a). Our purpose is to determine the relation between the node forces
Fxi , Fyi , Fxj , Fyj and the node displacements ui , vi , uj , vj .
To this aim, we introduce a local x′ -y ′-coordinate system (see Figure 3 (b))
with its origin at the end point i and its axis x′ directed along the bar axis
7

vj

v' j

uj

j
y

Fxj
vi

α

x'

y'

y

j

u' j
'j

Fx

'j

Fy

Fyj

v' i

ui

α

u' i

i

i

Fxi

'i

Fx

Fyi

'i

Fy

x

x

(b)

(a)

Fig. 3. Displacements and force components of a bar element with respect to: (a)
the global x-y system, and (b) the local x′ -y ′ system.

from the end point i towards the end point j. Note that this coordinate system
can be obtained from the xy-system by a rotation of angle α.
From Figures 2 and 3 (b) and Equation (15) we obtain
Fx′ i = −N = k(u′i − u′j )

(16)

Fx′ j = N = k(u′j − u′i ),
which can be written as

′

Fe =

′
 Fxi


 ′
 Fyi

 ′
F
 xj


Fy′j














′

′

= Ke ue =

 1


 0
k

 −1





u′i



0 −1 0   




0 0 0
  vi′ 



,


 ′
0 1 0
  uj 

0 0 0 0



vj′

(17)



′

where Ke is the so-called local element stiffness matrix, that is symmetric.
It can be observed that the displacements along the y ′ -axis, i.e., vi′ and vj′ ,
produce no forces on the bar. This assumption is valid only if the displacements
are small; otherwise, the components vi′ and vj′ might result in an elongation
of the bar and thus in the development of forces.
Let us now establish a relation between the displacements ui , vi , uj , vj and
u′i , vi′ , u′j , vj′ . By geometrical arguments it follows directly that
ui = u′i cos α − vi′ sin α
vi =

u′i

sin α +

vi′

cos α

and the corresponding equations for uj and vj .
8

(18)

Therefore

ue =







 ui 




 vi 




 uj 





T

′

= Le ue =

 cos α


 sin α


 0



− sin α

0

u′i







 ′ 
0   vi 


 ′ ,


− sin α   uj 




cos α

0

0

cos α

0

sin α cos α

0

vj

0



(19)

vj′

where Le is the so-called transformation matrix, that is an orthogonal matrix
−1
T
(Le = Le ).
Premultiplying (19) by Le and using the orthogonal property, we then conclude
that
′
ue = Le ue .
(20)
As both forces and displacements are vector quantities, we can choose the
′
same basis for the forces and then, the element forces Fe and Fe are related
in exactly the same manner as the element displacements, i.e.,
T

e

Fe = Le F′ .

(21)

With these preliminary remarks, we can determine the relation between the
element forces Fe and the element displacements ue . Insertion of (20) into (17)
yields
′
′
Fe = Ke Le ue ,
(22)
eT
and premultiplication by L and using (21) leads to
T

e

T

′

Fe = Le F′ = Le Ke Le ue = Ke ue ,

(23)

where Ke is the so-called global element stiffness matrix. Its explicit expression
is


Ke =





k





2

2

cos α

cos α sin α

− cos α

cos α sin α

sin2 α

− cos α sin α

− cos2 α

− cos α sin α

cos2 α

− cos α sin α

− sin2 α

cos α sin α



− cos α sin α 
− sin2 α

cos α sin α
sin2 α




,





(24)

which shows the symmetric character of the global element stiffness matrix
Ke .
The truss analysis problem has the following elements to be considered:
Bars: The longitudinal elements supporting only tension or compression
stresses (the number of bars is b).
9

Nodes: The frictionless elements that join the bars allowing relative rotation
between them (the number of hinges or nodes is m).
Supports: Elements that prevent the structure to experiment solid rigid
displacements. The reactions exerted by the supports are the necessary ones
for the equilibrium to hold. The number of constraints associated with the
supports is denoted c.
Forces: The forces acting on the nodes (hinges) of the structure that are the
data of our problem.
Displacements: Movements suffered by the nodes owing to the strains produced by the stresses in the bars.
Unknowns: The hinge (nodal) displacements. The number of unknowns coincides with the number of possible hinge displacements, which is the number of degrees of freedom (two times the number of nodes m in case of
bi-dimensional analysis).
Equations: The mathematical relations that give the nodal forces in terms
of the nodal displacements. To derive the system of equations that model a
given problem the global structure stiffness matrix must be obtained.

v3

u3

Fy3

v4
4

3

Fy4

Fx3

u4

4

3

Fx4

y
x
1

v2

2

v1

u2

u1

1

2

Fx1

Fx2
Fy1

(a)

(b)

Fy2

Fig. 4. Displacements and force components for the two-dimensional truss structure.

Example 4 (A simple truss structure) As an example of how the element stiffness matrix can be used to derive the stiffness matrix for the whole
structure, consider the simple truss structure shown in Figure 1. Using the
relationships between forces and movements, establishing the equilibrium of
vertical and horizontal forces for each node, and replacing the static magnitudes (stresses) by their equivalents as a function of the nodal displacements,
then the so-called global assembled stiffness matrix is obtained. Note that
each element stiffness matrix (Ke ) is assembled into the global element stiff10

ness matrix (K), to get the following system of equations:








 u1   Fx1 
 


 



 v1   Fy1 
 

179 72 | −125 0 | −54 −72 | 0
0 
 



 


 72 96 | 0

−−
−−
0
|
−72
−96
|
0
0






 






 − − + − − + − − + − − 
 Fx 

 u2 
2 


−125 0 | 233 0 | −54 72 | −54 −72
 






 v 


 0
 2   Fy2 
0
|
0
192
|
72
−96
|
−72
−96


 

k 




Ku =
 − − + − − + − − + − −  −−  =  −− 
=

150
 

 −54 −72 | −54 72 | 233 0 | −125 0 








u
F

 3   x3 

 −72 −96 | 72 −96 | 0 192 | 0
0 
 







 v3   Fy 

 − − + − − + − − + − − 
  3 





 0
 

0 | −54 −72 | −125 0 | 179 72 


 −−   −− 




0
0 | −72 −96 | 0
0 | 72 96 
 

 u4   Fx4 
 


 



v4

F

Fy4

(25)
where ui , vi ; i = 1, . . . , 4 are the node displacements shown in Figure 4 (a) and
Fxi , Fyi ; i = 1, . . . , 4 are the external forces acting on the hinges of the structure
including support reactions (see Figure 4 (b)). The different partitions refer
to different nodes.
First, using the method described in Section 2.1 the conditions to be satisfied
by the linear system (25) to have solution (one or more) are obtained:

0 = Fx1 + Fx2 + Fx3 + Fx4
0 = Fy1 + Fy2 + Fy3 + Fy4
0 = 4/5Fx1 − 3/5Fy1 + 4/5Fx2 + 3/5Fy2 + 6/5Fy4 ,

(26)
(27)
(28)

where (26) and (27) express the equilibrium of horizontal and vertical forces
respectively, and (28) establishes the equilibrium of moments (the moment are
taken with respect to node 3). Thus, these conditions state that the structure
subject to the external forces and the support reactions must be in equilibrium
P
P
P
( Fxi = 0, Fyi = 0 and Mi = 0).

The rank of K in (25) is 5 that implies that three (8 − 5) rows are linear
combinations of the other rows, and then the system (25) has infinite solutions.
So, some extra equations of the form Bu = b, where b is the boundary
conditions vector, can be added maintaining the compatibility of system (25).

To obtain the set of all possible solutions of system (25), we apply the orthog11

onalization algorithm and obtain:








 v1 




u 
 2




 v2 






 u3 




v 
 3




 u4 









 u1 

 467/120 



=

v4

1
k

 

 

0

1





 4/5 



 
 


 
 


 −3/5 
1
0
 501/160 


 
 




 
 


 4/5 
0
1
 359/120 


 
 




 
 




 
 


 3/5 
1
0
 −359/160 


 
 


;
 +ρ1   +ρ2   +ρ3 



 
 


 0 
0
1
 39/10 


 
 




 
 










0
 0 
1
0




 
 




 
 


 0 
0
1


0


 
 




 
 



0

6/5

1

0

ρ1 , ρ2 , ρ3 ∈ IR,

(29)
which from a mathematical point of view is an affine space, i.e., the sum of
a given vector (the first one) plus a linear space of dimension 3 (an arbitrary
linear combination of 3 linearly independent vectors).
ρ2

ρ3
ρ3

ρ1

6/5 ρ3

ρ3
3/5 ρ3

3/5 ρ3
4/5 ρ3

4/5 ρ3
(a)

(b)

(c)

Fig. 5. Illustration of the basis of the linear space of dimension three that appears in
the general solution of the two-dimensional truss structure in Example 5. The basis
has three generators that correspond to: (a) a horizontal translation, (b) a vertical
translation, and (c) a rotation.

Note that the linear space is generated by three vectors that, due to the
symmetry of the stiffness matrix, coincide with those in (26)-(28). From an
engineering point of view, this solution must be interpreted as follows:
(1) The dimension of the linear space is the number of degrees of freedom
we have, i.e., the maximum number of u and v displacements that can
be fixed for the system to have a unique solution.
(2) The linear space component of the solution (unlimited values of the ρ
coefficients, and consequently unlimited displacements) implies that the
structure can be located anywhere whereas the forces acting on the structure guarantee equilibrium.
(3) The first vector is a particular solution, i.e., a solution to the stated
problem. Note that it satisfies Equation (25) for the F values in Figure 6.
It is worth noting that this vector can be replaced by any other particular
12

solution, which can be obtained by adding to it any linear combination
of the three basic vectors.
(4) The second vector corresponds to a solution of the associated homogeneous problem, i.e., with no external forces. In this particular case it
corresponds to the horizontal displacement of the structure as a rigid
solid (see Figure 5(a)).
(5) The third vector corresponds to another solution of the associated homogeneous problem. In this case, it is the vertical displacement of the
structure as a rigid solid (see Figure 5(b)).
(6) Finally, the fourth vector corresponds to another solution of the associated homogeneous problem, which corresponds to the rotation of the
structure as a rigid solid with respect node 3 (see Figure 5(c)).
It is obvious that the linear space generated by the last three vectors in (29)
can be represented using another basis of the same space, i.e., considering
equilibrium with respect other point.

4

Classification of truss structures

Structures can be classified in different ways depending on the rank of the
matrix



T

and the value of b + c and m, as shown in Table 1. They
K|B
include isostatic, hyperstatic, critical and mechanism truss structures:


T

Isostatic: In this kind of structures 2m = b + c and the rank K | B
=
2m, i.e., a unique solution exists. They are characterized because (a) the
boundary conditions ensure equilibrium under all possible external forces,
(b) thermic strains do not induce stresses, and (c) if any of their elements
(nodes, bars, or boundary conditions) is removed the structure becomes a
mechanism or a critical structure.
Hyperstatic: In this kind of structures b + c > 2m where (b + c) − 2m is


T

the degree of hyperstaticity and the rank K | B
= 2m, i.e., a unique
solution exists. They are characterized because (a) the boundary conditions
ensure equilibrium under all possible external forces, (b) thermic strains
induce stresses, and (c) if any of their elements (nodes, bars, or boundary
conditions) is removed the structure becomes a isostatic structure or remains
hyperstatic. Note that there are two hyperstatic cases, one is due to an
excess of bars in the truss structure, and the other is due to an excess in
the supports (boundary conditions).


T

Mechanism: In this kind of structures b+c ≤ 2m and the rank K | B
<
2m, i.e., infinite solution exists. They are characterized because (a) the
13

Table 1
A classification of truss structures.


K



b+c

Isostatic

 
 
Rank − 
 
B
2m

2m

Hyperstatic

2m

> 2m

Critical

< 2m

≥ 2m

Mechanism

< 2m

≤ 2m

boundary conditions do not ensure equilibrium under all possible external
forces, (b) thermic strains do not induce stresses.


T

Critical: In this kind of structures 2m ≥ b+c and the rank K | B
< 2m,
i.e., infinite solution exists. They are characterized because (a) the boundary
conditions do not ensure equilibrium under all possible external forces within
the hypothesis of small deformations, (b) thermic strains induce stresses,
and (c) if any of their elements (nodes, bars, or boundary conditions) is
removed the structure becomes a mechanism.
To illustrate their main differences we include some examples.
Example 5 (An isostatic truss structure) Consider the particular case
shown in Figure 6, where there are 3 external forces. Since the vector of external forces F has to fulfill the compatibility conditions (26)-(28), we use them
to obtain the truss reactions:
External forces
Support reactions

Fy3 = -1
5
Fx3 = 1

4

3

Fx4 = -13/4

y
2

1

3

1

4

2
x

Fx1 = 9/4
Fy1 = 2

Fy2 = -1

Fig. 6. The two-dimensional truss structure showing the external forces and reactions.

Fx1 = 9/4;

Fy1 = 2;
14

Fx4 = −13/4;



and then, the force vector becomes: F = 1/4 9 8 0 −4 4 −4 −13 0

T

.

Next, we consider the boundary conditions imposed by the supports that
establish the final location of the structure. Assuming that those boundary
conditions are u1 = 0, v1 = 0 and u4 = 0, then from (29) we have:
u1 = 467/(120k) + ρ1 + 4/5ρ3 = 0
v1 = 501/(160k) + ρ2 − 3/5ρ3 = 0
v4 = ρ2 + 6/5ρ3 = 0.
The solution of this system of equations is ρ1 = 0, ρ2 = −121/(20k) and
ρ3 = −467/(96k). Thus the corresponding solution obtained after replacing
these values of ρ1 , ρ2 and ρ3 into (29), is unique and equal to:






 u1 




 v1 




u 
 2




 v2 






 u3 




v 
 3




 u4 





=

v4

1
k



0









0




 −9/10 






 −897/80 



.


 39/10 




 −121/120 








0





−951/80

Note that the uniqueness of solution implies that the imposed boundary conditions are enough to avoid rigid solid movements and therefore the supports
would be able to react to external forces acting on the structure in such a way
that the compatibility conditions (equilibrium) hold. The solution is unique
because for the submatrix corresponding to ρ coefficients and u1 , v1 and v4 in
(29), we have:




1 0 4/5 



Rank 0 1 −3/5 = 3





0 1 6/5



⇔







K










rank  −  = 2m = 8.
B

Example 6 (An isostatic truss structure) Consider the structure shown
in Figure 7 subject to three forces P1 , P2 and P3 . Applying the superposition
principle and assuming that the forces acting on the structure are:
15

T



F1 = P1 0 0 0 0 1 0 −1 0

,



F2 = P2 3/4 1 0 0 0 −1 −3/4 0


F3 = P3 3/2 1 0 −1 0 0 −3/2 0


F4 = P4 9/4 1 0 0 0 0 −9/4 −1

T

T

T

that satisfy the compatibility conditions (26)-(28), the associated system of
equations leads to the general solution:
3
9
341
287
4
 
 


 
 
 


 5   20   210   60 
 5 
 9   19   25   27
u 1 
1
0
 3


 
 
 
 
 

 


 
 
 
 
 − 
 
− 
 20   10   32   40
 v1 
0
1
 5
 3   9   233   179
 
 
 
 4 


 
 
 
 
 

 



u 
1
 
 
 

0

 5   20   120   60 
 2
 
 
 5 


 
 
 
 
 

 

 9   27  233  27
 
 
 
 3 

 v2  P −  P −  P −
0
 P − 
1

1

 
 
 2
 3
 4

 

 =  20+  80+  160+  40 +ρ1  +ρ2  +ρ3 5  ,

  k 6  k 9  k 9  k 9 
 
 


u 3 
1
 
 
 

0
 0 


 
 
 
 
 

 


 5   10   5   5 
 
 
 



v 
0
 
 
 

1

 0   0   0   0 
 3
 
 
 0 


 
 
 
 
 

 



 
 
 
 
 

 



u 4 
1
 
 
 

0


 
 
 
 
 

 
 0 

 0   0   0   0 

 
 
 


 
 
 


v4
0
1

 
 
 

 6 
0
0
0
0
5
(30)
where P1 , P2 , P3 , P4 , ρ1 , ρ1 , ρ3 ∈ IR. From a mathematical point of view this
is a linear space, i.e., the solutions are the linear combinations of seven given
vectors.






















P2



P4
5

P1

4

3

y
4/5

3

2
1

4
2

1

x
P3
3/5

6/5

Fig. 7. Isostatic structure in Example 6 showing the applied loads.

Example 7 (A critical truss structure) If we consider the same structure
as in Example 5 with other boundary conditions, for example, u1 = 0, v1 = 0
and u2 = 0, then from (29) we have:
16

u1 = 467/(120k) + ρ1 + 4/5ρ3 = 0
v1 = 501/(160k) + ρ2 − 3/5ρ3 = 0
u2 = 359/(120k) + ρ1 + 4/5ρ3 = 0,
which is an incompatible system of equations, because for the submatrix associated with the ρ’s and u1, v1 and u4 in (29) we have


1


Rank 0





0 4/5 

1



−3/5



= 2 < 3.

1 0 4/5

Adding the equations imposed by the boundary conditions to the system (25),
T



considering the external forces (see Figure 8) F = 1/8 9 12 0 −8 8 −8 −17 4
that satisfy the compatibility conditions (26)-(28)(equilibrium conditions) and
applying the orthogonalization algorithm the following set of all possible solutions is obtained:




 u1 




 v1 




u 
 2




 v2 






 u3 




v 
 3




 u4 





v4





=

1
k





0
 0 










 0 


0












0
 0 










 6/5 
 −49/16 




.
 + ρ





 −4/5 
 −1/24 








 3/5 
 −37/16 












 −4/5 
 −73/24 








0

(31)

9/5

From an engineering point of view, this solution must be interpreted as follows:
(1) The first vector is a particular solution, i.e., a solution to the stated
problem. Note that it satisfies equation (25) for the F values considered
and the boundary conditions u1 = 0, v1 = 0 and u2 = 0.
(2) The second vector corresponds to a solution of the associated homogeneous problem, and represents the rotation of the structure as a rigid
solid with respect node 1, as it is shown in Figure 8. This implies that
there is a set of infinite solutions (rotations), and that the actual boundary conditions are not able to avoid the rigid solid displacement of the
structure without the development of new forces in the bars under the hypothesis of small displacements. Moreover, the supports are not capable
17

Fy4 = 1/2
Fy3 = -1 4/5 ρ

Fx4 = 17/8
5
4

3/5 ρ

Fx3 = 1

3
ρ

9/5 ρ

4

3

4/5 ρ

2
2
1

1

6/5 ρ

ρ

Fx1 = 9/8
Fy2 = -1
Fy1 = 3/2

Fig. 8. Illustration of the set of general solutions associated with the boundary
conditions u1 = 0, v1 = 0 and u2 = 0 for the critical two-dimensional truss example.

of supplying the reactions required to satisfy the equilibrium conditions
for all possible forces acting on the nodes of the structure.

4

3
y

4/5
1

2
x
3/5

6/5

Fig. 9. The mechanism structure analyzed in Example 8.

The same result is obtained considering

B=



1


0





0 0 0 0 0 0 0
100000



0



⇔





K
 
 
rank  − 
 
 

= 2m − 1 = 7

B

00100000

that implies that there is one rigid solid rotation (ρ) allowed.
Example 8 (A Mechanism structure) Consider the simple mechanism truss
structure shown in Figure 9. The system of equations resulting from assem18

bling the global element stiffness matrices becomes:


Ku =

k
150

54 72


 72 96


0

0

0

0





 u1 

0 


  u2 


−72 −96 0
0 


u 


3
−54 72 −54 −72   


−54 −72



0


 0
0 108 0




 0


0 0 192 72 −96 −72 −96 
  u4 




 −54 −72 −54 72 233 0 −125 0  

  u5 







0 
u 
 −72 −96 72 −96 0 192 0
 6




0 −54 −72 −125 0 179 72 

 0

  u7 



0 0 −72 −96 0
0 72 96  

u8



=

 Fx1


 Fy1


F
 x2


 Fy
 2


 Fx3


F
 y3


 Fx4



Fy4



























(32)

and the corresponding compatibility conditions, using the method described
in Section 2.1, become:
0 = Fx1 + Fx2 + Fx3 + Fx4
0 = Fy1 + Fy2 + Fy3 + Fy4
0 = 4/5Fx1 − 3/5Fy1
0 = 4/5Fx2 + 3/5Fy2 + 6/5Fy4 ,

(33)
(34)
(35)
(36)

where (33) and (34) express the equilibrium of horizontal and vertical forces,
respectively, and (35) and (36) establish the equilibrium of moments with
respect to node 3 of the left and right substructures, respectively.
Assuming that the forces acting on the structure satisfy the compatibility

T
conditions (33)-(36) and take values: F = 1/8 9 12 0 −8 8 −8 −17 4 , the
system (32) leads to the general solution:








 

 









0
4/5
0
1
49/8
u1




 

 



0
 0 
 −3/5 
1

0

 v1 




 

 



 4/5 
 0 
0
1
 3/2 
 u2 




 

 



 3/5 
 0 
1

0
v 
1




 
 
 −61/32 
 2
 , (37)
 +ρ4 
 +ρ1   +ρ2   +ρ3 
= 











 u3 
0
0
0
1
3
k




 

 












v 
0
 0 
 0 
1

0

 3




 

 



0
 0 
 0 
0

1

 u4 
6/5
0
1
0
0
v4
where ρ1 , ρ1 , ρ3 , ρ4 ∈ IR. From a mathematical point of view this is an affine
space, i.e., the sum of a given vector (the first one) plus a linear space of dimension 4 (an arbitrary linear combination of 4 linearly independent vectors).
The graphical interpretation of these four vectors is shown in Figures 10 (a-d),
19

i.e., a horizontal translation, a vertical translation and two independent rotations with respect to node 3. Note that eliminating the bar 1-2 allows the bar
1-3 and the right substructure to rotate with respect to node 3 independently.
That is why there are two rotation parameters ρ3 and ρ4 . Note that in the
solution (29) corresponding to the structure with this bar, the rotation vector
is the sum of the last two vectors in (37).
ρ2

ρ1

(a)

(b)
ρ4

ρ3

6/5 ρ4

ρ4
3/5 ρ4

3/5 ρ3
4/5 ρ3

(d)

(c)

4/5 ρ4

Fig. 10. Illustration of the four basic vectors of the linear space component of the
solution corresponding to Example 8. They correspond to a horizontal translation,
a vertical translation and two independent rotations with respect to node 3.

If we add the boundary conditions u1 = 0, v1 = 0 and u4 = 0, then from (37)
we obtain the system of linear equations:

u1 = 49/(8k) + ρ1 + 4/5ρ3 = 0
v1 = ρ2 − 3/5ρ3 = 0
u4 = ρ1 = 0
which solution is ρ1 = 0, ρ2 = −147/(32k) and ρ3 = −245/(32k), but ρ4
becomes free.
Considering the boundary conditions matrix


1000000

B = 0 1 0 0 0 0 0
0000001



0
0

0

⇔





K
 
rank  −  = 2m − 1 = 7
B

that implies that there is 1 rigid solid movements allowed under the assumption
of small displacements without strains.
20

Then, the solution in this case becomes:












0
u1
0






0

 0 
 v1 







 4/5 
 u2 
 −3/2 







 3/5 
v 
1


 2
 −13/2 
,
= 
 + ρ4 


 0 
 u3 

3
k






 0 
v 
 −147/32 



 3







0

 0 
 u4 

6/5
v4
−147/32
that implies that the actual boundary conditions do not prevent the rotation
of the right substructure with respect node 3 as shown in Figure 11.

6/5 ρ4

4

ρ4

3

ρ4
2

1

3/5 ρ4

4/5 ρ4

Fig. 11. Illustration of how the boundary conditions u1 = 0, v1 = 0 and u4 = 0 do not
prevent the rotation of the right substructure with respect node 3 in a mechanism
structure.

3

4

y
4/5

1
2

x

3/5

Fig. 12. The hyperstatic structure analyzed in Example 9.

Example 9 (An hyperstatic structure) Consider now the structure given
in Figure 12 where an additional bar joining nodes 1 and 4 has been added.
The system of equations resulting from assembling the global element stiffness
21

matrices in this case is:

Ku =

k
300





 u1 


  u2 


0
0 −375 −144 −192 


u 



 −500 0
3
608 −144 −108 144 0
0  







 0
u
0 −144 567 144 −192 0 −375   4 







 0
0 −108 144 608 −144 −500 0   u5 







0
0 u 

 0 −375 144 −192 −144 567
 6



0 −500 0 608 144   

 −108 −144 0
  u7 



−144 −192 0 −375 0
0 144 567  


608 144 −500


 144 567
0


0

0

0



−108 −144  


u8



=

 Fx1


 Fy1


F
 x2


 Fy
 2


 Fx3


F
 y3


 Fx4





























Fy4
(38)

and the compatibility conditions become:
0 = Fx1 + Fx2 + Fx3 + Fx4
0 = Fy1 + Fy2 + Fy3 + Fy4
0 = 4/5Fx1 + 4/5Fx2 + 3/5Fy2 + 3/5Fy4 ,

(39)
(40)
(41)

which correspond to the equilibrium of horizontal forces, vertical forces and
moments with respect to node 3.
Assuming that the forces acting on the structure satisfy the compatibility

T
conditions (39)-(41) and take values F = 1/4 3 8 0 −4 4 −4 −7 0 , the
following general solution is obtained:








 

 





u1
4/5
0
1
353/960




 

 

 v1 
 0 
1
0
 521/540 




 

 

 u2 
 4/5 
0
1
 11/40 




 

 

v 
 3/5 
1

0
1
 2


 
 
 −343/540 
= 

;
 + ρ1   + ρ2   + ρ3 
 u3 
 0 
0
1
 133/192 
k




 

 

v 
 0 
1

0

0
 3


 

 





 

 

0
 u4 
 0 
0

1

v4
3/5
1
0
0

ρ1 , ρ1 , ρ3 ∈ IR.

(42)
From a mathematical point of view it is an affine linear space, i.e., the sum of
a given vector (the first one) plus a linear space of dimension 3 (an arbitrary
linear combination of 3 linearly independent vectors).
Example 10 (Hyperstatic structure) Consider the particular truss structure in Figure 13, subject to 3 external forces. Note that it is the same example
as the initial one but adding a new boundary condition (v4 = 0), thus we add
a new equation to the system (25) but we have a new unknown variable, the
22

5
4

3
y
3

4

2
1

1

4/5

2
x
3/5

6/5

Fig. 13. Hyperstatic truss structure of Example 10.

vertical support reaction on node 4 (Fy4 ). Applying the superposition principle
we transform our problem as it is shown in Figure 14.
The set off all possible solutions will be composed by (29) and the particular
solution associated with the vector
F=

1
−9 −4 0 0 0 0 9 4
4


T

,

(43)

which is








 v1 




u 
 2




 v2 






 u3 




v 
 3




 u4 





v4





 u1 

 467/120 

=

1
k





 501/160 




 359/120 






 −359/160  F
y4


+



k
 39/10 






0








0





0





 −287/60 

 

 

0

1

1

0





 4/5 


 

 



 

 


0
 27/40 
1
 −3/5 

 

 



 

 


1
 −179/60 
0
 4/5 

 

 



 

 



 

 


0
 27/40 
1
 3/5 

 

 


+ρ1  +ρ2  +ρ3 

,

 

 


1
 −9/5 
0
 0 

 

 



 

 










0

0

1
 0 

 

 



 

 



1

0
 0 
0

 

 



 

 



0

6/5
(44)
where Fy4 , ρ1 , ρ2 , ρ3 ∈ IR, that from a mathematical point of view is an affine
linear space, i.e., the sum of a given vector (the first one) plus a linear space
of dimension 4 (an arbitrary linear combination of 4 linearly independent
vectors). The graphical interpretation of the last three vectors is shown in
Figure 5, whereas the first one is the particular solution associated with the
system of forces (43).
If we add the boundary conditions u1 = 0, v1 = 0, u4 = 0 and v4 = 0, then
23

Fy3 = -1
Fx3 = 1

4

3

y

Fy4 = ?

1
Fx1 = 9/4(1-Fy4)

Fx4 = (9Fy4-13)/4

2
x
Fy2 = -1

Fy1 = 2-Fy4
=

External forces
Support reactions

Fy3 = -1
Fx3 = 1
y

Fx4 = -13/4

Fx4 =9/4

4

3

4

3

y

1

+ Fy4*
1

2

1
x
Fy2 = -1

Fx1 = 9/4
Fy1 = 2

Fx1 = -9/4

2
x

Fy1 = -1

Fig. 14. Illustration of the superposition principle applied to Example 10.

from (38) we have:






 u1 − 467/(120k) 




 v1 − 501/(160k) 






u4





=

 −287/(60k)


 27/(40k)



0



0

v4











,





1 0 4/5   Fy4 




0 1 −3/5 
  ρ1 
10

0

0 1 6/5

ρ2
ρ3

(45)

which solution is Fy4 = 317/269, ρ1 = 0, ρ2 = −11267/(4304k) and ρ3 =
56335/(25824k). Thus the solution is unique and equal to:






 u1 




 v1 




u 
 2




 v2 






 u3 




v 
 3




 u4 





v4

=

1
k

0











0





657/538 






 −11867/4304 


.





957/538




 −11267/4304 








0





0

24

5

Solving Systems of Inequalities

In many engineering applications we find systems of linear inequalities of the
form:
Ax ≤ b.
(46)
Before trying to solve a system of inequalities of this type it is interesting to
check whether or not the system is compatible, that is, if it has some solutions.
Even, in many cases we can be interested in obtaining the conditions for
the system to be compatible in terms of the independent terms b1 , b2 , . . . , bm .
These conditions always have a physical or engineering meaning that raises
some light about the problem under consideration. Once the system is proven
to have solution we solve the system and obtain all its possible solutions.
To solve these two problems the Γ algorithm is used (see Jubete [7,8], Padberg
[9], Castillo, Jubete, Pruneda and Solares [5], Castillo, Esquivel y Pruneda [6]
and Castillo, Conejo, Pedregal, Garcı́a and Alguacil [4]), that gives the dual
cone of a given cone and is the key tool to discuss the compatibility problem
and solve the system of inequalities.
Since the concepts of cone and dual cone are used, we start with their definitions.
Definition 1 (Polyhedral convex cone) Let A be a matrix, and {a1 , . . . , am }
be its column vectors. The set
Aπ ≡ {x ∈ IR n | x = π1 a1 + · · · + πm am with πj ≥ 0; j = 1, . . . , m}
of all nonnegative linear combinations of the column vectors of A is known
as the polyhedral convex cone generated by a1 , . . . , am (its generators), and is
denoted Aπ .
A cone Aπ can be written as the sum of a linear space Vρ plus a pure (acute)
cone Wπ , i.e., Aπ = Vρ + Wπ .
In this paper we use the Greek letter π to refer to non-negative real numbers.
Definition 2 (Nonpositive dual or polar cone) Let Aπ be a cone in IR n
with generators a1 , . . . , ak . The nonpositive dual of Aπ , denoted Apπ , is defined
as the set
n

o

n

Apπ ≡ u ∈ IR n | AT u ≤ 0 ≡ u ∈ IR n | aTi u ≤ 0; i = 1, . . . , k

o

that is, the set of all vectors such that their dot products by all vectors in Aπ
are nonpositive.

25

Definition 3 (Polytope) Let A be a matrix, and {a1 , . . . , am } be its column
vectors. The set
(

n

Aλ ≡ x ∈ IR | x = λ1 a1 + · · · + λm am with λj ≥ 0; j = 1, . . . , m;

m
X

λi = 1

i=1

of all linear convex combinations of the column vectors of A is known as the
polytope generated by a1 , . . . , am (its generators), and is denoted Aλ .
5.1 Deciding whether or not a system of linear inequalities is compatible
In this section we show how to analyze the compatibility of a system of linear
inequalities.
First, we discuss the compatibility of a particular system of the form:
a11 x1 +a12 x2 + · · · +a1n xn = b1 ,
a21 x1 +a22 x2 + · · · +a2n xn = b2 ,
···

···

··· ···

(47)

···

am1 x1 +am2 x2 + · · · +amn xn = bm
x1 , x2 , · · · , xn ≥ 0
that can be written as






x1 















a11 





a21 

 + x2 


.. 

.

am1











a12 





a22 

 + · · · + xn 


.. 

.

am2











a1n  
 

a2n 
 
=

.. 
.  

amn

x1 , x2 , · · · , xn ≥ 0



b1 

b2 


.. 
. 

bm

(48)




Expression (48) shows that the given system is compatible if and only if the
vector b = (b1 , . . . , bm )T belongs to the cone generated by the set of column
vectors {a1 , a2 , · · · , an } of the coefficient matrix A, i.e.,
b ∈ Aπ = b ∈ (Apπ )p

(49)

Thus, the compatibility problem reduces to finding the dual cone Vρ + Wπ of
the cone generated by the columns of the coefficient matrix and checking that
bT V = 0 and bT W ≤ 0.
26

)

To analyze the compatibility of an arbitrary system of linear inequalities, it can
be converted to the case in (47), using slack variables to convert the inequalities
in equalities, and one more artificial variable to convert the arbitrary variables
into no negative variables, that is, each variable xi can be converted to x∗i −x0 ,
where x0 , x∗i ≥ 0.
Example 11 (Compatibility of a linear system of equations in restricted variables)
Consider the following linear system:
x2 −x3 −2x4 = b1
x3 +x4 = b2
−x2 +x3 +2x4 = b3

(50)

x2 +x3 −x4 = b4
−x1 +2x2 +x3 +x4 = b5
x1 , x2 , x3 , x4 ≥ 0.
For it to be compatible, the vector b = (b1 , b2 , b3 , b4 , b5 )T must belong to the
cone Cπ generated by the columns of the coefficient matrix, that is to say, it
must belong to the dual of the dual of Cπ . Thus, the compatibility problem
reduces to finding the dual cone Cpπ ≡ Vρ + Wπ and checking that bT V = 0
and bT W ≤ 0.
Since Cpπ is the cone:
 

Cpπ

1

=

 
 
0
 
 
1
 
 
 
0
 
 

0

ρ



 −2



 −3


+
 0


 1





1 −1 −4 

1 −2
0

0

−1

1

0

0

0



−7 


0



2



1

,

π

we obtain the desired compatibility conditions:




−2 1 −1 −4




  −3 1 −2 −7 




b1 b2 b3 b4 b5 
 0 0 0 0  ≤ 0,


 1 −1 1 2 


0 0 0 1


b1 b2 b3 b4 b5



10100

27

T

= b1 + b3 = 0.

(51)

5.2 Solving a homogeneous system of linear inequalities
Consider the homogeneous system of inequalities
Ax ≤ 0

(52)

ai xT ≤ 0; i = 1, . . . , m.

(53)

which can be written as

Expression (53) shows that (x1 , . . . , xn ) is the dual cone of the row vectors
{a1 , a1 , . . . , am } of A.
Thus, obtaining the solution of the system (52) reduces to determining the
dual cone Apπ of the cone generated by the cone generated by the rows of
matrix A.
Thus, the general solution of an homogeneous system of linear inequalities is
a cone, that is, its general solution is of the form
x=

p
X

ρi vi +

q
X

πj wj ;

ρi ∈ IR;

πj ∈ IR + .

j=1

i=1

Example 12 (Solving an homogeneous system of linear inequalities)
Consider the system of equations
−x5 ≤ 0
x1 +x2

+x4 −x5 ≤ 0

−x1 +x2 −2x3 −x4 +x5 ≤ 0
−2x1

(54)

+x3 −x4 −x5 ≤ 0

2x1 +x2 −x3

+x5 ≤ 0.

To solve this system, we obtain the dual cone of the cone generated by the
rows coefficients and obtain the solution:




x1 
2
 
  
x2   −5
  
  
x  =  −1
 3 
  
   −5
x4  
 
 
0

x5



2
−1
3
−1
0

0
−1
−1
1
0

−2
−1
−1
3
0





π1 
−2 






π
2
3  





3   π3 
;




3 
  π4 


4  
π5


28

πi ∈ IR + ; i = 1, 2, . . . , 5.

5.3 Solving a complete system of linear inequalities
Now consider the complete system of linear inequalities:
Ax ≤ b

(55)

where A ∈ IR m×n and b ∈ IR m .
Adding the artificial variable xn+1 , the constraint xn+1 = 1 and the redundant
constraint xn+1 ≥ 0 (it is a key trick that allows the constraint xn+1 = 1 to
be easily forced at the end of the process), it can be written as
a11 x1 +a12 x2 + · · · +a1n xn −b1 xn+1 ≤ 0
a21 x1 +a22 x2 + · · · +a2n xn −b2 xn+1 ≤ 0
···

···

···

···

···

···

am1 x1 +am2 x2 + · · · +amn xn −bm xn+1 ≤ 0

(56)

am1 x1 +am2 x2 + · · · +amn xn −bm xn+1 ≤ 0
−xn+1 ≤ 0
xn+1 = 1.
System (56) can be written as
(a11 , . . . , a1n , −b1 )(x1 , . . . , xn , xn+1 )T ≤ 0
(a21 , . . . , a2n , −b2 )(x1 , . . . , xn , xn+1 )T ≤ 0
·································

···

(am1 , . . . , amn , −bm )(x1 , . . . , xn , xn+1 )T ≤ 0

(57)

−xn+1 ≤ 0
xn+1 = 1.
Expression (57) shows that (x1 , . . . , xn , xn+1 ) belongs to the dual cone of the
cone generated by the set of vectors
{(a11 , . . . , a1n , −b1 ), (a21 , . . . , a2n , −b2 ), . . . , (am1 , . . . , amn , −bm ), (0, 0, · · · , 0, −1)}.
Then, it is clear that the solution of (56) is the intersection of that cone
with the hyperplane xn+1 = 1. Thus, the solution of (55) is the projection on
X1 × · · · × Xn of the solution of (56). In other words, the general solution of
29

a complete system of linear inequalities is a polyhedron, that is the sum of a
linear space, a cone and a polytope, that is, its general solution is of the form
x=

p
X
i=1

ρi vi +

q
X

πj wi +

j=1

r
X

λk uk ;

+

+

ρi ∈ IR, πj ∈ IR ; λk ∈ IR ;

k=1

r
X

λk = 1.

k=1

Example 13 (Solving a complete system of linear inequalities) To solve
the following system of inequalities:
x1 +x2

+x4 ≤

1

−x1 +x2 −2x3 −x4 ≤ −1
−2x1

+x3 −x4 ≤

2x1 +x2 −x3

(58)

1

≤ −1,

we use the auxiliary variable x5 and the redundant constraint 1 = x5 ≥ 0.
Then, the system (58) can be written as:
−x5 ≤ 0
x1 +x2

+x4 −x5 ≤ 0

−x1 +x2 −2x3 −x4 +x5 ≤ 0
−2x1

(59)

+x3 −x4 −x5 ≤ 0

2x1 +x2 −x3

+x5 ≤ 0
x5 = 1.

Since the upper part is an homogeneous system, one need to find the dual
cone of the cone generated by the row coefficients. After imposing condition
x5 = 1 one gets the solution:
x1 
 
 
x2 
 
 
x 
 3
 

x4









=



 −1/2   2
 

 

 3/4   −5
+

 

 3/4   −1
 

 


3/4








,


0 −2   π1 




−1 −1 −1 
  π2 
2

(60)



3 −1 −1 
  π3 

−5 −1

1

3



π4



which has no linear space part and whose polytope part reduce to a single
vector.
30

6

The Truss Analysis Problem Revisited

In this section we analyze the truss analysis problem, but assuming additional
constraints related to node displacements and maximum bar compressions.
Fy3 = -1
5
Fx3 = 1

4

3

y
4/5

5/k

4

3
2
1

1

2
x
Fy3 = -1
3/5

6/5

Fig. 15. Truss structure of Example 14 showing the acting forces and the support
conditions.

Example 14 (The lifting jack structure) Consider the structure shown
in Figure 15 where there is a lifting jack that push the node 4 in the vertical
direction. We want to obtain the minimum force that has to be applied by the
lifting jack, for the descent of node 4 to be smaller than 5/k. We would like
to get the set of all possible node displacements for all the valid values of the
force exerted by the lifting jack.
As the boundary conditions in this case are u1 = 0, v1 = 0, u4 = 0 and
v4 ≥ −5/k, from (44) we can get the following system of linear inequalities:
u1 − 467/(120k) = −287/(60k)Fy4 + ρ1 + 4/5ρ3
v1 − 501/(160k) = 27/(40k)Fy4 + ρ2 − 3/5ρ3

(61)

u4 = ρ1
5/k ≥ −ρ2 − 6/5ρ3
which solution, using the Γ-algorithm is:










ρ1
ρ2
ρ3





 Fy4 









=



551/807



1















0
0




;
+π





 233/(80k) 
 −52441/(12912k) 









−60595/(77472k)

π ≥ 0,

(62)

287/(48k)

which is composed of a particular solution and a cone generated by a single vector. Note that Fy4 = 551/807 is the force necessary to get a vertical
31

displacement of node 4 equal to −5/k. Since it cannot be smaller and must
satisfy the constraint v4 ≥ −5/k, the value of π has to be positive.
Replacing (62) in (44) we get:







 u1 




 v1 




u 
 2




 v2 






 u3 




v 
 3




 u4 





v4

=

1
k



0









0






177/538






 −81521/12912 


+





1437/538




 −52441/12912 








0





−5



π
k

0










0 




 9/5 






 287/40 


;



 −9/5 




 233/80 







0 





π ≥ 0,

(63)

807/80

which, as before, is the sum of a particular solution and a cone generated by
a single vector.
From an engineering point of view, this solution must be interpreted as follows:
(1) The particular solution gives the displacements produced by the force
Fy4 = 551/807 that is the minimum force required to satisfy the constraint v4 ≥ −5/k. Note that the vertical displacement of node 4 is equal
to −5/k.
(2) The cone generator represents the displacement increments produced by
a unit force acting on the lifting jack. Note that the vertical displacement
at node 4 is equal to 807/(80k), and that because the π-value has to be
positive the vertical displacement of node 4 is always greater than −5/k.
(3) Note that both solutions satisfy the boundary conditions u1 = 0, v1 = 0,
u4 = 0.
Example 15 (Maximum compression constraint) Consider the same structure as in Figure 7. The aim is to find all possible values of forces P1 , P2 , and P3 ,
in such a way that bars 1 and 5 are always subject to positive stresses (trac(l) (l)
tions). To solve this problem a relation between the displacements ui , vi ,
(l) (l)
uj , vj and the axial force N (l) acting on bar l must be established. From
32

(15) and (20) we have:

N

(l)





(l)

(l)

= k −1 0 1 0 L u



(l)



 ui 


  (l) 
 vi 



= k − cos α(l) − sin α(l) cos α(l) sin α(l) 


.

 u(l) 
 j 


(l)

vj
(64)

If bars 1 and 5 are to be subject to tensions (N (1) ≥ 0 and N (5) ≥ 0) and the
structure must satisfy the boundary conditions u1 = 0, v1 = 0 and u4 = 0, the
following system of inequations obtained from (30) and (64) must be solved:

u1 = 3P1 /(5k) + 9P2 /(20k) + 341P3 /(120k) + 287P4/(60k) + ρ1 + 4/5ρ3
v1 = 9P1 /(20k) + 19P2 /(10k) + 25P3/(32k) − 27P4 /(40k) + ρ2 − 3/5ρ3
u4 = ρ1
0 ≥ 3P3 /4 + 3P4 /2
0 ≥ P1 + 3P2 /4 + 3P3 /2 + 3P4 /2,
where the last two inequalities represent the constraints −N
−N (5) ≤ 0, respectively.

(1)

(65)
≤ 0 and

The solution of the system using the Γ-algorithm is:







 P1 




 P2 




P 
 3




 P4 






 ρ1 




 ρ2 





ρ3

=



12


 25 
 16 


− 
 25 




3/4




 1 






 −2 









ρ4  1 +ρ5 










 0 







 0 








0




0
0

0
1
k
0





 1 

179

−
 125


 72 


 125 







 4/3 







 −4/3 













+π1  0 +π2 













 0 










 0 











 233 





(72k)

33







0 

0
0

0
3
(4k)




 ; ρ4 , ρ5













∈ IR; π1 , π2 ≥ 0

(66)

Replacing (66) in (30) we get:




 u1 




 v1 




u 
 2




 v2 






 u3 




v 
 3




 u4 





v4



=

ρ4
k




























0 

0 


0
25
16
0
0
0
0







 ρ
5

+
 k











 

0
 
 
0
 
 
0
 
 
 
1 π
1
 
 +
  k
0
 
 
1
 
 
 
0
 
 

1





























0 

0 


1
179
60
0
0
0
233
60







 π
2

+
 k















 0 


 0


 0


 9

 10

 6
−
 5


 0



 0

 9

10












 ; ρ4 , ρ5













∈ IR; π1 , π2 ≥ 0,

(67)
which is a cone, i.e., the sum of a linear space of dimension 2 and an acute
cone generated by two vectors.
From an engineering point of view, this solution must be interpreted as follows:
(1) The fist linear space generator in (67) corresponds to a vertical displacement of node 2 with the remaining nodes being fixed, which leads to
compressions in bars 3 and 4 and no stresses in the remaining bars (see
Figure 16(a)).
(2) The second linear space generator in (67) corresponds to a vertical displacement of nodes 2, 3 and 4 with node 1 remaining fixed, which corresponds to a rigid vertical displacement of the substructure defined by
those nodes, while bar 2 is subject to tension stress. This implies that
bars 1, 3, 4 and 5 are subject to no stress (see Figure 16(b)).
(3) The first acute cone generator in (67) corresponds to a rotation with
respect to node 3 of the substructure defined by nodes 2, 3 and 4, with
the bar 2 remaining fixed, while bar 1 is subject to tension stress. This
implies that bars 2, 3, 4 and 5 are subject to no stress (see Figure 16(c)).
(4) The second acute cone generator in (67) corresponds to a vertical translation of nodes 3 and 4 and a horizontal displacement of node 3. This
implies that bar 2 is subject to compression, bar 5 to tension, and bars
1, 3 and 4 are subject to no stress (see Figure 16(d)).
(5) Note that all vertices satisfy the boundary conditions u1 = v1 = u4 = 0.
(6) Note also that the rotation, horizontal and vertical displacements associated with the acute cone generators must have the sign indicated in
Figures 16(c) and 16(d) (π1 , π2 ∈ IR + ) for the bars 1 and 5 being subject
to positive stress (tension), while the vertical displacements associated
with the linear space generators can have any direction (ρ4 , ρ5 ∈ IR)
because bars 1 and 5 do not work under these displacements.

34

P4 = 0

P2 = -16/25
P2 = 1
P1 = 3/4

3

5
3

5
4

2

3

2

P1 = 12/25

P4 = 1

4

1

3

2

4

2
1

25/16

1

1

4

1

1
P3 = -2

P3 = 0
(b) ρ5

(a) ρ4
P4 = 0

P2 = 72/125

P2 = 4/3
5

4

P1 = 1

P4 = 0
4

6/5

233/60

5

9/10

4
3

3

P1 = -179/125
2

2

2
1

179/60

1

3

3
1

4
2
9/10

1
1

P3 = 0

P3 = -4/3
(c) π1

(d) π2

Fig. 16. Illustration of the different basic vectors that generate the linear space and
the cone components of the solution of Example 15, where the tension bars 1 and 5
have been distinguished from the remaining bars.

Example 16 (Tension, compression and deflection constraints) Consider
the same structure as in Figure 7, but now bars 3 and 4 have been replaced
by cables, that can only stand tensions, and bars 1, 2 and 5 are built using
concrete, material specially suitable to support compressions.
The target of this example consists of obtaining the values of the forces
P1 , P2 , P3 and P4 that can be applied on the structure in such a way that
the cables work under tension and the concrete beams under compression,
respectively. In addition, the maximum vertical deflection of node 4 is limited
to v2 ≥ −1/k.
If bars 3, and 4 are to be subject to tensions (N (3) ≥ 0 and N (4) ≥ 0), bars
1, 2 and 5 to compressions (N (1) , N (2) ≤ 0 and N (5) ≤ 0) and the structure
must satisfy the boundary conditions u1 = 0, v1 = 0 and u4 = 0, the following
35

system of inequations obtained from (30) and (64) must be solved:

u1 = 3P1 /(60k) + 9P2 /(20k) + 341P3/(120k) + 287P4/(60k) + ρ1 + 4/5ρ3
v1 = 9P1 /(20k) + 19P2 /(10k) + 25P3 /(32k) − 27P4 /(40k) + ρ2 − 3/5ρ3
u4 = ρ1
0 ≥ −3P3 /4 − 3P4 /4
0 ≥ −5P2 /4 − 5P3 /4 − 5P4 /4
0 ≥ −5P3 /4 − 5P4 /4
0 ≥ 5P4 /4
0 ≥ −P1 − 3P2 /4 − 3P3 /2 − 3P4 /2
1/k ≥ 9P1 /20 + 27P2 /80 + 233P3/160 + 27P4 /40 − ρ2 − 3/5ρ3 ,
(1)

where the last six inequalities represent the constraints N ≤ 0, N
−N (3) ≤ 0, −N (4) ≤ 0, N (5) ≤ 0 and −v2 ≤ 1/k, respectively.

(2)

(68)
≤ 0,

The solution of the system using the Γ-algorithm is:




5
60
12
12

 −




 
− 
−




9 
179 
 25 
 15 



P
 16 
 16 
 1



0
80 










 
0
−










 
 25 
 25 
179
 P2 




0










 
80
 32 








 

 0 

0 
P 



0




 3




 
179
 25 








 
 16 








 
+λ2 
+λ3 
0
 P4  = λ1 



+λ
+λ
0
4
5 0 ,
− 
 0 






 
 25 








 










 




 ρ1 




0
0 
 0 
 0 
0





 










 




 ρ2 




0
1










 
 0 
−1/k 
−
0






 




(2k)












ρ3
0




1165 


5 
−
−
0
0
(1074k)
(12k)
(69)
where




5
X





λi = 1; λi ≥ 0; i = 1, . . . , 5,

i=1

36



(70)

and replacing (69) in (30) we get:








 v1 




u 
 2




 v2 






 u3 




v 
 3




 u4 









 u1 

=





 0 




 0 






−1


+



 0 




 0 






 0 





λ1
k





 0 

λ2
k

0





 0 



 0 





 0 




 0 






−1


+



 0 




−1






 0 





λ3
k









0




 −72/179 







−1 


+





0






0








0





λ4
k

P4 = -16/25

P2 = 16/25
P1 = -12/25

−1

λ5
k

0
 
 
0
 
 
0
 
 
 
0
 
 ,
 
0
 
 
0
 
 
 
0
 
 

0
(71)
P5
where i=1 λi = 1; λi ≥ 0; i = 1, . . . , 5, which is the sum of a polytope
generated by 5 vectors (vertices).
v4

−1





 0 




 0 






 −1 


+



 2/3 




−1/2






 0 





 



0

P1 = -12/25

3
2

2

4

3

5
3

P1 = 5/9
2

3

4

1

1

2

5
2

3
3

1

1

1
2

P3 = 0

(b) λ2
P2 = -80/179

(c) λ3

P4 = 0
4

5
233/179

1

1
P3 = 80/179

P4 = 0

P2 = 0
P1 = 0
2

4
2

4
4

1

P3 = 0

(a) λ1
P1 = -60/179

3

2

P3 = 32/25

1

5

3

1

1

1/2

1

4

1

1

P4 = 0

2/3 P = 0
2

P4 = 0

P2 = 16/25

4

5

−233/179

1

4

3
3

1

4
2
P3 = 0

72/179
(d) λ4

(e) λ5

Fig. 17. Illustration of the different basic vectors that generate the linear space and
the cone components of the solution of Example 16.

From an engineering point of view, this solution must be interpreted as follows:
(1) The fist vertex in (71) corresponds to a vertical displacement of node 2
with the remaining nodes being fixed, which leads to traction stresses in
bars 3 and 4 and no stress in the remaining bars (see Figure 17(a)).
(2) The second vertex in (71) corresponds to a vertical displacement of nodes
2, 3 and 4 with node 1 remaining fixed, which corresponds to a rigid
37

(3)

(4)

(5)
(6)
(7)

7

vertical displacement of the substructure defined by those nodes, while
node 2 is subject to compression stress. This implies that bars 1, 3, 4 and
5 are to no stress (see Figure 17(b)).
The third vertex in (71) corresponds to a vertical displacement of bar
4 and a rotation with respect to node 1 of the substructure defined by
nodes 1, 2 and 3, which leads to a compression of bar 5. This implies that
bars 1, 2, 3 and 4 are subject to no stress (see Figure 17(c)).
The fourth vertex in (71) corresponds to a rotation with respect to node 3
of the substructure defined by nodes 2, 3 and 4, with the bar 2 remaining
fixed, while bar 1 is subject to compression stress. This implies that bars
2, 3, 4 and 5 are subject to no stress (see Figure 17(d)).
The fifth vertex in (71) corresponds to no displacement at all, which
implies no stress in all bars (see Figure 17(e)).
Note that all vertices satisfy the boundary conditions u1 = v1 = u4 = 0.
Note also that the maximum allowed vertical displacement in node 2
(v2 ≥ −1/k) corresponds to all cases with λ5 = 0, i.e., v2 = −(λ1 + λ2 +
λ3 + λ4 ) = −1.

Conclusions

The following conclusions can be derived from this paper:
(1) A full understanding of real problems stated as systems of linear equations
or inequalities requires both the mathematical and the engineering points
of view that complement each other.
(2) The compatibility conditions must be interpreted from an engineering
point of view, which help to identify errors, omissions or possible discrepancies between the mathematical model and the reality being modeled.
(3) The mathematical structures of the general solutions, linear spaces, cones,
polytopes and mixed combinations of these three structures have clear
engineering interpretations that are closely related to the real problem
being modeled.
(4) The generators of the solution set, i.e., the linear space generators (basis),
the cone generators, and the polytope generators (vertices) have clear
interpretations from an engineering point of view, and contains a valuable
information on the general solution of the problem and its properties.

References
[1] E. Castillo, A. Cobo, A. Fernandez-Canteli, F. Jubete, and R. E. Pruneda.
Updating inverses in matrix analysis of structures, Internat. J. Numer. Methods

38

Engrg. 31, No. 1, 43, pp. 1479–1504, 1998.
[2] E. Castillo, A. Cobo, F. Jubete, and R. E. Pruneda. Orthogonal Sets and Polar
Methods in Linear Algebra: Applications to Matrix Calculations, Systems of
Equations and Inequalities, and Linear Programming, John Wiley, New York,
1999.
[3] E. Castillo, A. Cobo, F. Jubete, R. E. Pruneda and C. Castillo. An Orthogonally
Based Pivoting Transformation of Matrices and Some Applications, SIAM
Journal on Matrix Analysis and Applications 22, no.3, 666-681, 2000.
[4] E. Castillo, A. Conejo, P. Pedregal, R. Garcı́a and N. Alguacil. Building and
Solving Mathematical Programming Models in Engineering and Science, New
York: John Wiley & Sons, 2001.
[5] E. Castillo, F. Jubete, E. Pruneda and C. Solares. Obtaining simultaneous
solutions of linear subsystems of equations and inequalities, Linear Algebra and
its Applications, 346, 131-154, 2002.
[6] E. Castillo, M. Esquivel and R. E. Pruneda. Automatic Generation of Linear
Programming Problems for Computer Aided Instruction, International Journal
of Mathematical Education in Science and Technology, 32, 209-232, 2001.
[7] F. Jubete. El cono poliédrico convexo. Su incidencia en el álgebra lineal y la
programación no lineal, Editorial CIS, Santander, Spain, 1991.
[8] F. Jubete. El Politopo. Su estructura geométrica y volumen exacto, Editorial
CIS, Santander, Spain, 1993.
[9] M. Padberg. Linear optimization and extensions, Springer, Berlı́n, 1995.

39

