Monte Carlo Simulation of Dynamic Systems

Scanning QR Code JIS X 0510 In VS .NETUsing Barcode Control SDK for VS .NET Control to generate, create, read, scan barcode image in .NET framework applications.

(b) Sequential Monte Carlo Studies

QR Code Generator In .NET FrameworkUsing Barcode creator for VS .NET Control to generate, create QR Code 2d barcode image in Visual Studio .NET applications.

Instead of computing Monte Carlo statistics after n repeated simulation runs, we can accumulate sample averages after every simulation run The following experiment-protocol script first initializes the sample averages xAvg and xxAvg and then again loops to make n simulation runs with new parameter and initial-condition values At the end of the ith run, the program reads x = x(t0 + TMAX) = x(i) and updates the statistics values:

QR Recognizer In Visual Studio .NETUsing Barcode scanner for VS .NET Control to read, scan read, scan image in .NET applications.

xAvg = 0 | xxAvg = 0 | -initialize statistics computation for i = 1 to n | -Monte Carlo loop b = b0 + B * f1(ran()) | -set a new random parameter value q = q0 + C * f2(ran()) | -set a new random initial value -drunr | -make a simulation run and reset state variables x[i] = X | -read successive sample values of x =X(t0 + TMAX) -----------------------------------------------now accumulate statistics! xAvg = xAvg + (x - xAvg)/n xxAvg = xxAvg + (x^2 - xxAvg)/n xVar = xxAvg - xAvg^2 next | -and loop back

Make Bar Code In VS .NETUsing Barcode drawer for .NET Control to generate, create bar code image in VS .NET applications.

This technique can save time, for it permits us to terminate the study when the sample variance has become sufficiently small (sequential Monte Carlo simulation)

Bar Code Scanner In Visual Studio .NETUsing Barcode scanner for .NET Control to read, scan read, scan image in .NET framework applications.

(c) Example: Effects of Gun-elevation Errors on the 1776 Cannon

QR Generation In Visual C#Using Barcode maker for .NET Control to generate, create QR Code JIS X 0510 image in VS .NET applications.

We will study a continuous random process generated by a differentialequation system with a random parameter, specifically a random initial value Similar programs apply directly to many Monte Carlo studies of manufacturing-tolerance effects Simulation of the 1776 cannon5 in Figure 4-2 has been used as a textbook problem for over 50 years [6,7] Assuming that the wind force W(t) is zero, the only forces acting on the spherical cannonball are its weight mg and aerodynamic drag opposing the velocity vector Airspeed is relatively low, so that the drag is roughly proportional to the square of the velocity Referring to Figure 4-2, the equations of motion in the horizontal and vertical directions are

QR Code Printer In .NET FrameworkUsing Barcode drawer for ASP.NET Control to generate, create QR-Code image in ASP.NET applications.

(d/dt) x = xdot (d/dt) y = ydot (d/dt) xdot = R v2 cos = R v xdot (d/dt) ydot = R v2 sin g = R v ydot g

Draw QR Code In Visual Basic .NETUsing Barcode generator for .NET Control to generate, create QR Code 2d barcode image in Visual Studio .NET applications.

1776 gun elevations were not really affected by manufacturing errors Elevations of land-based guns were usually set with wedges under the rear part of the barrel, and naval-gun elevation also required judgment of the ship s roll angle Either way, there were lots of random errors

Code 39 Creation In .NETUsing Barcode generation for VS .NET Control to generate, create Code 3/9 image in Visual Studio .NET applications.

Parameter-influence Studies, Model Replication, and Monte Carlo Simulation

EAN128 Generator In Visual Studio .NETUsing Barcode creation for .NET Control to generate, create GS1-128 image in .NET applications.

ous ntane Insta n of flight tio direc

ANSI/AIM Code 128 Generator In .NETUsing Barcode encoder for VS .NET Control to generate, create Code 128 Code Set C image in .NET applications.

W (t) Horizontal

ISSN - 10 Maker In .NETUsing Barcode drawer for VS .NET Control to generate, create ISSN image in .NET applications.

D(v ) v (O

EAN13 Encoder In Visual C#Using Barcode creator for .NET framework Control to generate, create European Article Number 13 image in VS .NET applications.

mg (O) X XI

UPC-A Supplement 2 Creator In VS .NETUsing Barcode printer for ASP.NET Control to generate, create UPC-A Supplement 5 image in ASP.NET applications.

FIGURE 4-2 Cannon geometry (based on Reference [6]) We assume that the wind force W(t) is zero

Barcode Decoder In JavaUsing Barcode scanner for Java Control to read, scan read, scan image in Java applications.

with

Generating Bar Code In VB.NETUsing Barcode generation for Visual Studio .NET Control to generate, create barcode image in .NET applications.

v = sqrt(xdot2 + ydot2)

Code 128 Code Set C Maker In Visual Studio .NETUsing Barcode creation for ASP.NET Control to generate, create Code 128C image in ASP.NET applications.

The acceleration due to gravity g = 322 ft/s2 and R = 75E-05 ft 1 is the drag coefficient divided by the projectile mass The trajectory of each shot is then determined by the initial muzzle position x(0) = y(0) = 0 and the initial velocity components

Paint Bar Code In VS .NETUsing Barcode printer for ASP.NET Control to generate, create bar code image in ASP.NET applications.

xdot(0) = v0 * cos(theta0) ydot(0) = v0 * sin(theta0)

Code39 Maker In Visual Basic .NETUsing Barcode printer for .NET Control to generate, create Code 39 Full ASCII image in .NET framework applications.

(4-10)

Drawing UCC - 12 In JavaUsing Barcode creation for Java Control to generate, create GS1 - 12 image in Java applications.

theta0 is the gun elevation angle, and v0 = 900 ft/s is the given muzzle velocity Assuming level ground, the impact abscissa xI is the value of x where y = 0 at the end of a trajectory A good way to read xI is with the track-hold differ-

ence equation

xI = xI + swtch(y) * (x - xI)

(Section 2-16b), which causes xI to track x while and then holds the x value The initial value of the difference-equation state variable xI defaults to 0 To aim the cannon, we set the elevation angle theta0 to obtain a desired impact abscissa xI, say theta0 = 70 * PI/180 Our Monte Carlo study then adds random perturbations to this nominal gun elevation and determines their effect on the sample average and sample variance of the impact coordinate xI To get approximately Gaussian-distributed elevation errors, we set

theta0 = 70 * PI/180 + a * (ran()+ran()+ran()+ran())

Monte Carlo Simulation of Dynamic Systems

Since ran() is uniformly distributed between 1 and 1 with expected value 0 and theoretical variance 1/3, we have

E{theta0} = 70 PI/180 Var{theta0} = 4 * a2/3

Figure 4-3 shows time histories of x(t) and the track-hold output xI(t) for a few simulation runs together with the complete program for the repeated-run Monte Carlo study The program also displays the resulting sample average xavg and the sample statistical dispersion s = sqrt(abs(xxavg xavg^2)) of the impact abscissa xI after n runs