MATH661 Project 2
Large system factorization and model reduction:
Time-dependent case

Posted: 11/15/23

Due: 10/27/23, 11:55PM

This project extends the study of static binary interactions from Project 1 to time-dependent interactions.

1Introduction

1.1Modeling binary interaction in science and engineering

Many systems consist of point interactions. The iconic Eiffel Tower can be modeled through the trusses linking two points with coordinates 𝒙i,𝒙j3. The unit vector along direction from point i to point j is

𝒍ij=𝒙j-𝒙i||𝒙j-𝒙i||.

Suppose that structure deformation changes the coordinates to 𝒙i+𝒖i, 𝒙j+𝒖j. The most important structural response is a force 𝒇i exerted on point i that can be approximated as

𝒇i=𝒍ij𝒍ijT(𝒖j-𝒖i),

in appropriate physical units. An opposite force 𝒇j=-𝒇i acts on point j by principle of action and reaction. Note the projector along the truss direction 𝑷ij=𝒍ij𝒍ijT, allowing computation of nodal forces as

𝒇i=𝑷ij𝒖j-𝑷ij𝒖i
𝒇j=-𝑷ij𝒖j+𝑷ij𝒖i

Adding forces on a point from all trusses leads to the linear relation

𝒇=𝑲𝒖 (1)

with 𝒇,𝒖m the forces and displacements, 𝑲m×m the stiffness matrix, d=3 the number of dimensions, N the number of points, and m=dN, the number of degrees of freedom of the structure. This is a simple example of a finite element method. The vectors 𝒇,𝒖 contain the forces, displacements at all nodes, e.g.,

𝒖=[ 𝒖1 𝒖2 𝒖m ],

with each 𝒖id. Assembly of the stiffness matrix 𝑲 is carried out by adding contributions from each truss

[ 𝒇i 𝒇j ]=[ -𝑷ij 𝑷ij 𝑷ij -𝑷ij ][ 𝒖i 𝒖j ].

Such point interactions arise in molecular or social interactions, cellular motility, and economic exchange much in the same form (1). The techniques in this homework are thus equally applicable to physical chemistry, sociology, biology or business management.

Figure 1. (Left) Eiffel Tower model. (Center) Model nodes. (Right) Model edges.

1.2Problem data

Problem setup is carried through the following steps.

Add required Julia packages.

Load the data.

Define the system matrix 𝑲.

Figure 2. Structure of 𝑲 at various magnification factors

1.3Utility routines

Draw the deformed structure in figure nf, given node coordinates 𝑿NX×d, displacements 𝒖m, m=dNX, skipping ks nodes (to reduce drawing time).

Draw the deformed structure in figure nf, given node coordinates 𝑿NX×d, displacements 𝑼NX×d, m=dNX, skipping ks nodes.

1.4Simplified “A” model

The full Eiffel Tower model is quite complex. It is convenient to build familiarity with modeling binary interactions using the much simpler two-dimensional (d=2) 8-node model shown in Fig. 3

Figure 3. “A” model of Eiffel tower

1.5Enforcing boundary conditions

When structures are attached to their environment, boundary conditions have to be enforced in the linear system 𝒇=𝑲𝒖. A common technique is set the diagonal element of 𝑲 for the node i subjected to boundary conditions to a large value B such that it effectively decouples from the system, and set fi=Bgi where gi is the desired boundary value.

2Time-dependent case

Newton's second law of motion states that the rate of change of an object's momentum is equal to the externally applied forces. For a single point mass moving along the x-axis, this is stated as

d(mx˙)dt=F

where x(t) is the point mass position, x˙(t) its velocity, m its mass (inertia, resistance to change of motion), and F the external force. If the mass remains constant (not the case for systems that eject/intake matter such as stars or rockets, neither for motion at speeds close to the speed of light when the resistance to change of motion goes to infinity), the familiar

F=ma=mx¨

law results.

For binary interaction models (Eiffel tower model, “A” model) a common technique to account for inertia is the so-called “lumped mass” model in which the mass of a truss is allocated as point masses concentrated at the nodes, i.e., the truss end-points. Assembly of contributions from all trusses leads to the system

𝑴𝒖¨+𝑲𝒖=𝒇,𝒖(0)=𝒖0,𝒖˙(0)=𝒗0.

The advantage of a lumped-mass model is that 𝑴 is a diagonal matrix. Project this system onto the orthonormal basis 𝑩m×n

𝑩𝑩T[𝑴𝒖¨+𝑲𝒖]=𝑩𝑩T𝒇,

with 𝒗(t) the projection of the system trajectory 𝒖(t)=𝑩𝒗(t) onto C(𝑩). Obtain

𝑵𝒗¨+𝑳𝒗=𝒈,

with 𝑵=𝑩T𝑴𝑩n×n, 𝑳=𝑩T𝑲𝑩n×n, 𝒈=𝑩T𝒇n. While 𝑲,𝑴 are large and require sparse representations, 𝑵,𝑳 are small and can be stored as full matrices. The above second-order ODE system with n equations can be rewritten as a first-order system with 2n equations

𝒒˙=ddt[ 𝒗 𝒘 ]=[ 𝒘 𝑵-1(𝒈-𝑳𝒗) ].

The notation 𝑵-1(𝒈-𝑳𝒗) is meant to signify the solution of the system 𝑵𝒔=𝒈-𝑳𝒗 to find 𝒔 by some numerical algorithm, e.g., LU or QR decomposition. Since the lumped mass matrix 𝑵=𝑩T𝑴𝑩 does not vary in time, the decomposition is computed just once, prior to time iteration, 𝑸𝑹=𝑵. At some given time t, 𝒔(t)=𝑵-1(𝒈(t)-𝑳𝒗(t)) is found by solving the triangular system

𝑹𝒔=𝑸T(𝒈-𝑳𝒗).

In the following problems assume a harmonically time-varying external force

𝒇(t)=𝒇0cos(ωt)

with 𝒇0 a force amplitude taken to be

𝒇0=xd𝒆d

in d dimensions. This corresponds to a force increasing with structure height xd, and is a reasonable model of structure interaction with a wind.

3Tasks

  1. Construct 𝑴A,𝑴 by distributing the mass of a truss to its endpoints. Assume trusses have the same linear density γ=1, such that the mass of a truss is mij=γ||𝒙i-xj||.

  2. Construct an algorithm to integrate the ODE system 𝑵𝒗¨+𝑳𝒗=𝒈, by use of:

    Track 1

    The fourth-order Runge-Kutta algorithm from H09;

    Track 2

    The fourth-order predictor-corrector algorithm using Adams-Bashforth as a predictor and Adams-Moulton as a corrector (see H09).

  3. Let 𝒗n(t) be the solution obtained above for 𝑩m×n containing n singular vectors of 𝑲. Construct a convergence study through plots of the error

    en(t)=||𝒗N(t)-vn(t)||k,t[0,4π/ω]

    in the k=1,2, norms. In the above N is taken as some large number of modes, and n=5,10,,N. The choice of N is dictated by computational constraints, i.e., the largest amount of execution time on a specific machine. For a typical laptop N50.