0 оценок0% нашли этот документ полезным (0 голосов)

10 просмотров69 страницApr 13, 2019

© © All Rights Reserved

PDF, TXT или читайте онлайн в Scribd

© All Rights Reserved

0 оценок0% нашли этот документ полезным (0 голосов)

10 просмотров69 страниц© All Rights Reserved

Вы находитесь на странице: 1из 69

Aim:

To visualize 2D and 3D plots using MATLAB with the help of Aerospace related questions

and interpreting it’s answers.

Theory:

A two-dimensional graph is a set of points in two-dimensional space. If the points

are real and if Cartesian coordinates are used, each axis depicts the potential values of a

particular real variable.

3D plot are generated from data defined as Z=f(X,Y). As for 2D plots, there are two ways to

obtain a 3D plot depending on the way the (X,Y,Z) values are defined.

Types of plot:

1. Line Plot: Line plots are a useful way to compare sets of data or track changes over

time. 2D or 3D line plot can be drafted on linear or logarithmic scale based on the

requirements.

2. Data Distribution Plots: Visualization of the distribution of data using plots such as

histograms, pie charts, or word clouds is known as Data Distribution Plots.

3. Discrete Data Plots: Visualizing discrete data using plots such as bar graphs or stem

plots. For example, one can create a vertical or horizontal bar graph where the bar

lengths are proportional to the values that they represent.

4. Geographical Plots: It is a plot of the movements of one or more craft relative to the

surface of the Earth.

5. Polar Plots: The are the data plots which are done in polar Coordinate System.

surface by plotting constant z slices, called the contours, on a 2 Dimensional format.

of space. A vector field in the plane can be visualised as a collection of arrows with a

given magnitude and direction, each attached to a point in the plane.

2

8. Animation Plots: Animations are generated from a list (or other iterable) of graphics

objects.

Questions:

the thrust required curve at an altitude of 13000 ft. Assuming weight of the aircraft is

73000 pounds. The airplane data are S=950 sq ft, AR= 5.92, Cdo=0.015, k=0.08.

First, we select a range of Velocities required for the graph between thrust and

velocity.

Next we calculate coefficient of lift using the formula:

Cl= 2(WEIGHT)/(DESITY)*(VELOCITY)^2*(AREA)

Cd=Cdo+k*Cl^2

Which gives: Cd= 0.015+0.08*Cl^2

Thrust=0.5*(DENSITY)*(VELOCITY)^2*(AREA)*(Cd)

And thus graph between thrust and velocity is plotted.

MATLAB Results:

We put the following code in matlab:

velocity=100:100:1300

density=0.00089068

weight=73000

area=950

Coeff_lift=2*weight./density*velocity.^2*area

Coeff_drag=0.015+0.08*Coeff_lift.^2

Thrust=0.5.*density.*velocity.^2.*area.*Coeff_drag

drag=0.5.*density.*velocity.^2.*area.*Coeff_lift

3

In command window:

plot(velocity,Thrust)

>> velocity =

Columns 1 through 11

1000 1100

Columns 12 through 13

1200 1300

density =

8.9068e-04

weight =

73000

area =

4

950

Coeff_lift =

1.0e+17 *

1.5572 1.8843 2.2424 2.6317

Coeff_drag =

1.0e+33 *

1.9400 2.8403 4.0228 5.5408

Thrust =

1.0e+39 *

0.8208 1.4540 2.4508 3.9616

drag =

5

1.0e+23 *

0.6588 0.9646 1.3661 1.8817

Graph Obtained:

6

2. From the above Values, plot and analyse variation of Cl^(3/2)/Cd, Cl/Cd, Cl^(1/2)/Cd

Curves.

velocity=100:100:1300

density=0.00089068

weight=73000

area=950

Coeff_lift=2*weight./density*velocity.^2*area

Coeff_drag=0.015+0.08*Coeff_lift.^2

R1=Coeff_lift.^(3/2)

Ratio1=R1./Coeff_drag

Ratio2=Coeff_lift./Coeff_drag

R2=Coeff_lift.^0.5

Ratio3=R2./Coeff_drag

Program Compilation:

>> KarthoVampee2

velocity =

Columns 1 through 5

Columns 6 through 10

Columns 11 through 13

density =

7

8.9068e-04

weight =

73000

area =

950

Coeff_lift =

1.0e+17 *

Columns 1 through 6

Columns 7 through 12

Column 13

2.6317

8

Coeff_drag =

1.0e+33 *

Columns 1 through 6

Columns 7 through 12

Column 13

5.5408

R1 =

1.0e+26 *

Columns 1 through 6

Columns 7 through 12

9

Column 13

1.3501

Ratio1 =

1.0e-06 *

Columns 1 through 6

Columns 7 through 12

Column 13

0.0244

Ratio2 =

1.0e-14 *

Columns 1 through 6

10

Columns 7 through 12

Column 13

0.0047

R2 =

1.0e+08 *

Columns 1 through 6

Columns 7 through 12

Column 13

5.1300

Ratio3 =

1.0e-21 *

11

Columns 1 through 6

Columns 7 through 12

Column 13

0.0001

plot(velocity,Ratio1);

hold on

plot(velocity,Ratio2);

hold on

plot(velocity,Ratio3)

Graph Obtained:

12

3. By volume, dry air contains 78.09% nitrogen, 20.95% oxygen, 0.93% argon,

0.04% carbon dioxide, and small amounts of other gases. Express this Data in terms

of a Pie Chart for better understanding.

MATLAB Codes:

X = [78.09 0.93 20.95 0.04];

>> labels = {'Nitrogen' 'Argon' 'Oxygen' 'Carbondioxide and Other Gases'};

>> pie(X,labels)

Result:

Interpretation:

From the above graphs, we not only get an idea of variation of different parameters with

respect to a constantly varying variable but also get to compute the value of required

parameters at any given point without mathematical interpolation.

13

4. Various Flight paths have been given along with their magnitudes of ranges it

travelled. Interpret the data using visualisation.

MATLAB Code:

z = eig(randn(10));

compass(z)

Result:

Interpretation:

Thus the Flight Paths of Various Aircrafts taking off an airport have been visualized and

interpreted.

14

5. The error occurred in measuring the airspeed by the onboard Pitot-Static tube is

calculated for different speeds in terms of Mach Number. Interpret the data in

MATLAB.

MATLAB Code:

x = 0:0.1:1;

errorbar(x,exp(–x),

0.5*rand(1,length(x)),’d’)

Result:

Interpretation:

Hence the error obtained in calculation of Airspeed for different Mach Numbers have been

interpreted and analysed.

15

3D Plot

Theory:

Some types of 3D graphical interpretation and its examples are as follows:

Mesh Plot:

The mesh function creates a wireframe mesh. By default, the color of the mesh is

proportional to the surface height.

z = peaks(25);

figure

mesh(z)

Surface Plot:

The surf function is used to create a 3-D surface plot.

surf(z)

colormap(jet)

The surfl function creates a surface plot with colormap-based lighting. For smoother color

transitions, use a colormap with linear intensity variation such as pink.

surfl(z)

colormap(pink) % change color map

shading interp % interpolate colors across lines and faces

Contour Plot:

The contour function is used to create a plot with contour lines of constant value.

contour(z,16)

colormap default % change color map

Quiver Plot:

The quiver function plots 2-D vectors as arrows.

x = -2:.2:2;

y = -1:.2:1;

16

[xx,yy] = meshgrid(x,y);

zz = xx.*exp(-xx.^2-yy.^2);

[px,py] = gradient(zz,.2,.2);

quiver(x,y,px,py)

xlim([-2.5 2.5])

Problems:

1. The Variation of Heat of the jet flow coming out of the Nozzle of a turbojet engine is

given by the equation:

5

𝑄=

1 + 𝑇 2 + 𝑇𝑖2

Where Q is the heat generated, T is the nozzle exit temperature and Ti is the Nozzle

inlet temperature.

Plot the variation of Heat with these two parameters.

MATLAB CODES:

X = -3 : .1 : 3;

[x,y] = meshgrid(X,X);

z = 1./(3+x.^2+y.^2);

surfl(z)

shading interp

colormap hot

xlabel('x'); ylabel('y');

17

GRAPH:

Interpretation:

From this Graph of variation of Heat generated to Temperatures at inlet and outlet, we get to

know the locations of Hotspots throughout the flow in nozzle at high speeds of the turbojet

aircrafts.

2. Visualise the Earth’s Surface using the 3D graph along with the Latitude and

Longitude of Earth in the graph.

MATLAB CODE:

sphere(50)

axis 'equal'

18

GRAPH:

Interpretation:

From this visualisation, we get a rough 3D image of Earth which can be used to plot various

points such as the poles, magnetic poles, etc. Also they can be used to track satellite

trajectories at the time of launch etc.

3. The variation of Dynamic Viscosity of Ethanol flowing at 25ᵒ inside a tube is given

by the relation:

µ = cos 4𝜋𝜌 + 2

where ρ is the density of the ethanol in the flow. Plot the variation of density and

Dynamic Viscosity and analyse.

MATLAB Codes:

z = 0: .03 : 1;

r = cos(4*pi*z)+2;

cylinder(r)

19

GRAPH:

Interpretation:

As the dynamic viscosity varies with the density with a function of Cosine. We obtain the

graph with varies the same way harmonically again and again throughout the flow. It is a

point to be notes that density does not remains constant and depends on several factors such

as the temperature, pressure etc.

20

4. When air passes through a series of Expansion waves, there is change in temperature

along with various parameters related to them. Take random values of Two expansion

waves and use a suitable plot to depict the relation between them.

MATLAB CODE:

x = [0 2.5; 5 2.5; 5 2.5; 0 2.5];

z = [0 0; 0 0; 2 2; 2 2];

fill3(x,y,z, rand(4,2))

view(120, 50)

grid

GRAPH:

21

obstacle such as an elevated mountain, transforms it into an polynomial equations and

interprets the height and other parameters for safer cruise. Consider a equation of the

mountain depicted by the algorithm to be:

1

𝑧=

log 8 + 𝑥 3 + 3𝑦 2

MATLAB CODE:

X = -3:.1:3;

[x,y] = meshgrid(X,X);

z = 1./(8+x.^2+3*y.^2);

contour3(z)

xlabel('x'); ylabel('y');

GRAPH:

Interpretation:

The Heli-carrier’s on board computers uses this data to find the altitude of the obstacle and

find an alternate safe Cruise path for it to fly.

22

Theory:

e = eig(A) returns a column vector containing the eigenvalues of square matrix A.

[V,D] = eig(A) returns diagonal matrix D of eigenvalues and matrix V whose columns are the

corresponding right eigenvectors, so that A*V = V*D.

[V,D,W] = eig(A) also returns full matrix W whose columns are the corresponding left

eigenvectors, so that W'*A = D*W'.

The eigenvalue problem is to determine the solution to the equation Av = λv, where A is an n-

by-n matrix, v is a column vector of length n, and λ is a scalar. The values of λ that satisfy the

equation are the eigenvalues. The corresponding values of v that satisfy the equation are the

right eigenvectors. The left eigenvectors, w, satisfy the equation w’A = λw’.

matrices A and B.

matrix V whose columns are the corresponding right eigenvectors, so that A*V = B*V*D.

[V,D,W] = eig(A,B) also returns full matrix W whose columns are the corresponding left

eigenvectors, so that W'*A = D*W'*B.

The generalized eigenvalue problem is to determine the solution to the equation Av = λBv,

where A and B are n-by-n matrices, v is a column vector of length n, and λ is a scalar. The

values of λ that satisfy the equation are the generalized eigenvalues. The corresponding

values of v are the generalized right eigenvectors. The left eigenvectors, w, satisfy the

equation w’A = λw’B.

[___] = eig(A,balanceOption), where balanceOption is 'nobalance', disables the preliminary

balancing step in the algorithm. The default for balanceOption is 'balance', which enables

balancing. The eig function can return any of the output arguments in previous syntaxes.

compute the generalized eigenvalues. The default for algorithm depends on the properties

of A and B, but is generally 'qz', which uses the QZ algorithm.

If A is Hermitian and B is Hermitian positive definite, then the default for algorithm is 'chol'.

by eigvalOption using any of the input or output arguments in previous syntaxes.

Specify eigvalOption as 'vector' to return the eigenvalues in a column vector or as 'matrix' to

return the eigenvalues in a diagonal matrix.

23

Problems:

1. The Stress on X,Y and Z axes of a given material Niantic-75 used in the

manufacturing of Combustion Chamber is given by the Eigen Values of this Matrix.

Compute using MATLAB.

MATLAB Code:

MatrixA=[3 2 4;2 0 2;4 2 3]

e=eig(MatrixA)

Result:

MatrixA =

3 2 4

2 0 2

4 2 3

e=

-1.0000

-0.4721

8.4721

Interpretation:

The Stress Values are 1, 0.4721 and 8.4721 N/m2 on the 3-Axis respectively. The

Negative Sign denotes the Nature of the stress which is either Compressive or Tensile.

24

2. A single Crystal of Diamond used for cutting Aircraft Parts is loaded as follows on its

[100] , [010] and [001] axes. What are the normal stresses on the orthogonal [111],

[110], [112] axes?

MATLAB Code:

>> e=eig(MatrixB)

Result:

e=

-7.4456

100.0000

107.4456

Interpretation:

The Normal Stress along the orthogonal plane of [111], [110], [112] are -7.4456, 100.0,

107.4456 respectively.

25

Polynomial Evaluation:

Theory:

y = polyval(p,x) evaluates the polynomial p at each point in x. The argument p is a vector

of length n+1 whose elements are the coefficients (in descending powers) of an nth-degree

polynomial:

p(x)=p1xn+p2xn−1+...+pnx+pn+1.

like polyint, polyder, and polyfit, but you can specify any vector for the coefficients.

To evaluate a polynomial in a matrix sense, use polyvalm instead.

[y,delta] = polyval(p,x,S) uses the optional output structure S produced by polyfit to generate

error estimates. delta is an estimate of the standard error in predicting a future observation

at x by p(x).

output mu produced by polyfit to center and scale the data. mu(1) is mean(x),

and mu(2) is std(x). Using these values, polyvalcenters x at zero and scales it to have unit

standard deviation.

This centering and scaling transformation improves the numerical properties of the

polynomial.

Problems:

1. The weight of an ideal round cut diamond which is used in cutting the Aluminium for

Aircraft can be modelled by the equation:

w=0.0021d3-0.060d2+0.23d

where w is the weight of the diamond in carats and d is the diameter in millimetres. For

Cutting a specific Part, diamond of 30 Millimetres is required. Determine the Weight of

diamond required.

26

MATLAB Codes:

p=[0.0021 -0.060 0.023];

x=[30];

y=polyval(p,x)

Result:

y =0.1130

Interpretation:

This Result gives is the Value of the Volume of the Diamond at x=30 mm. Hence a diamond

with volume of 0.1130 mm3 is required for the specific cutting process.

2. Consider a Symmetric Airfoil whose Mid-section is in the form of the rectangle with

sides of magnitude of Z, (Z+8), (Z+2) respectively. The volume is given by the

equation:

V=4z3+16z2+12z+15

A particular NACA Series Airfoil should have X=12 mm of dimension. Find the Volume of

the Rectangle used in the Airfoil.

MATLAB Codes:

Volume=[4 16 12 15];

z=[12];

y=polyval(Volume,z)

Result:

y = 9375

Interpretation:

Hence, The Volume of the rectangular section of the required airfoil is 9375 mm3.

27

CURVE FITTING:

Theory:

To interactively fit a curve, follow the steps in this simple example:

1. Load some data at the MATLAB® command line.

load hahn1

2. Open the Curve Fitting app. Enter:

cftool

3. In the Curve Fitting app, select X Data and Y Data.

Curve Fitting app creates a default interpolation fit to the data.

4. Choose a different model type using the fit category drop-down list, e.g.,

select Polynomial.

5. Try different fit options for your chosen model type.

6. Select File > Generate Code.

Curve Fitting app creates a file in the Editor containing MATLAB code to recreate all fits

and plots in your interactive session.

Alternatively,

Polynomial curve fitting

Syntax

p = polyfit(x,y,n)

[p,S] = polyfit(x,y,n)

[p,S,mu] = polyfit(x,y,n)

Description:

p = polyfit(x,y,n) returns the coefficients for a polynomial p(x) of degree n that is a best

fit (in a least-squares sense) for the data in y. The coefficients in p are in descending powers,

and the length of p is n+1

p(x)=p1xn+p2xn−1+...+pnx+pn+1.

[p,S] = polyfit(x,y,n) also returns a structure S that can be used as an input

to polyval to obtain error estimates.

[p,S,mu] = polyfit(x,y,n) also returns mu, which is a two-element vector with centering

and scaling values. mu(1) is mean(x), and mu(2) is std(x). Using these

values, polyfit centers x at zero and scales it to have unit standard deviation,

ˆx= ‾x x .

x− σ

28

This centring and scaling transformation improves the numerical properties of both the

polynomial and the fitting algorithm.

Questions:

1. The Coordinates of a part of the Horizontal Stabilizer of an Aircraft is given as

follows:

X Y

1 14

2 27

3 40

4 55

5 68

6 75

7 84

8 91

9 104

10 125

11 136

MATLAB Codes:

X_coordinates = [1 2 3 4 5 6 7 8 9 10 11];

>> Y_coordinates = [14 27 40 55 68 75 84 91 104 125 136];

>> polyfit(X_coordinates,Y_coordinates,1)

29

Result:

ans =

11.6545 4.5273

Interpretation:

From the graph, We come to know that the plot of the given coordinates is of the Horizontal

Stabilizer of the given aircraft.

2. The Variation between the Degree Shift of the Flaps mounted on the Wings of the

aircraft which is used to increase the camber of the Aircraft wing with the Percentage

increase in Coefficient of Lift varies with each other in a Parabolic form. With the

given Data, prove it graphically.

X Y

0 1.8

1 1.98

2 1.9926

3 2.07

4 2.67

30

5 2.88

6 3.00

MATLAB Codes:

X_coordinates = [0 1 2 3 4 5 6];

>> Y_coordinates = [1.8 1.98 1.9926 2.07 2.67 2.88 3.00];

polyfit(X_coordinates,Y_coordinates,1)

Result:

ans =

31

Theory:

If eqn is an equation, solve(eqn, x) solves eqn for the symbolic variable x.

Use the == operator to specify the familiar quadratic equation and solve it using solve.

syms a b c x

eqn = a*x^2 + b*x + c == 0;

solx = solve(eqn, x)

solx =

-(b + (b^2 - 4*a*c)^(1/2))/(2*a)

-(b - (b^2 - 4*a*c)^(1/2))/(2*a)

solx is a symbolic vector containing the two solutions of the quadratic equation. If the

input eqn is an expression and not an equation, solve solves the equation eqn == 0.

Questions:

1. The Error in Calculating the Pressure at a Given Altitude is given by the equation:

8x3+12x2+5x+2=0

As 3 different values are obtained, the highest possible error Magnitude is considered.

MATLAB Code:

Polynomial=[8 12 5 2];

>> root=roots(Polynomial)

Result:

root =

-1.1448 + 0.0000i

-0.1776 + 0.4322i

-0.1776 - 0.4322i

Interpretation:

Hence, the three required roots of the given polynomial are obtained.

32

2. The Given quadratic equation is the equation obtained while solving for a constant

that determines the Oswald’s Efficiency value which is used in the calculation of

various parameters in Flight Dynamics. Solve it using MATLAB.

12x2+4x+16=0

MATLAB Code:

Polynomial=[12 4 16];

>> root=roots(Polynomial)

Result:

root =

-0.1667 + 1.1426i

-0.1667 - 1.1426i

Interpretation:

We get the 2 different values of Oswald’s Constant from the MATLAB.

𝑓(𝛽) = cosh 𝛽 ∗ cos 𝛽 + 1 = 0

Where

𝑚𝐿3

𝛽𝑖4 = (2𝜋𝑓𝑖 )2 ( )

𝐸𝐼

Where

𝑓𝑖 = ith natural frequency

m= mass of the beam

L= Length of the beam

E= Modulus of Elasticity

I=Moment of inertia of the Cross-section

Find the Angles at which resonance occurs at the wing of this Airplane.

33

MATLAB Code:

>> syms x

>> Eqn2 = cosh(x)*cos(x)+1 == 0;

>> solx = solve(Eqn2,x)

Result:

solx = -212.05750411731104359622842837137

Interpretation:

The given value is close to 1.177 Radians at which there can be observed radians on

the wing of this Aircraft.

2. The Specific Fuel input to the Engine for an Commercial Aircraft is given by the

Lambert’s Equation:

𝑎𝑥 + 𝑏 log 𝑥 + 𝑐 √𝑥 + 𝑑 = 0

For a particular Aircraft Flying at 30,000 ft, the Specific Fuel Input is given by the equation:

3𝑥 + 5 log 𝑥 + 9√𝑥 + 10 = 0

Solve the equation using MATLAB.

MATLAB Code:

Eqn = 3*y+5*log(y)+9*sqrt(y)+10 ==0;

>> solx=solve(Eqn,y)

Result:

solx =0.078092206567782850204281665495309

Interpretation:

Hence, The Specific Fuel Input for this Aircraft at 30,000 ft is 0.078092.

34

Theory:

Questions:

1. The Three-Moment Equation for determining the Stress across a Beam is given by:

6𝑎1 𝑥̅1 6𝑎2 𝑥̅2

𝑀𝑎 𝐿1 + 2𝑀𝐵 (𝐿1 + 𝐿2 ) + 𝑀𝐶 𝐿2 = +

𝐿1 𝐿2

1. 22MA + 5MB=172.36

2. 5MA + 18MB=95.32

35

MATLAB CODE:

MatB=[172036;95.32]

X=linsolve(MatA,MatB)

Solution:

X=

7.0778

3.3295

Interpretation:

Hence we obtain the Values of MA and MB to be 7.0778 and 3.3295 respectively.

2. The Three-Moment Equation for determining the Stress across a Beam is given by:

6𝑎1 𝑥̅1 6𝑎2 𝑥̅2

𝑀𝑎 𝐿1 + 2𝑀𝐵 (𝐿1 + 𝐿2 ) + 𝑀𝐶 𝐿2 = +

𝐿1 𝐿2

2. 5MA + 7MB + 12MC= 158.63

3. 8MA + 2MB + 9Mc= 52.32

MATLAB Codes:

MatB=[62.5;158.83;52.32]

X=linsolve(MatA,MatB)

36

Result:

X=

-6.5268

12.0195

8.9440

Interpretation:

Hence we obtain the Values of MA, MB and MC to be 6.5268, 12.0944 and 8.944

respectively.

3. The mass flow rate of air be 2 kg/s and 5 kg/s and mass flow rate of fuel be 0.001kg/s

and 0.002kg/s and the thrust produced be 12,487N and 14,698N. Calculate the mass

flow rate of air and fuel for maximum thrust generated by the Aircraft.

MATLAB Code:

a=[ 2 5;0.001 0.002];

b=[12,487; 14,698];

linsolve(a,b)

Results:

ans =

3.56212

0.01245

Interpretation:

Hence the Mass flow rate and fuel required for generating maximum thrust has been

calculated.

37

Integral

Theory:

Single Integration:

Syntax

q = integral(fun,xmin,xmax)

q = integral(fun,xmin,xmax,Name,Value)

Description

q = integral(fun,xmin,xmax) numerically integrates function fun from xmin to xmax using

global adaptive quadrature and default error tolerances.

more Name,Value pair arguments. For example, specify 'WayPoints' followed by a vector of

real or complex numbers to indicate specific points for the integrator to use.

Double Integration:

Syntax

q = integral2(fun,xmin,xmax,ymin,ymax)

q = integral2(fun,xmin,xmax,ymin,ymax,Name,Value)

Description

q = integral2(fun,xmin,xmax,ymin,ymax) approximates the integral of the function z =

fun(x,y) over the planar region xmin ≤ x ≤ xmax and ymin(x) ≤ y ≤ ymax(x).

or more Name,Value pair arguments.

Triple Integration:

Syntax

q = integral3(fun,xmin,xmax,ymin,ymax,zmin,zmax)

q = integral3(fun,xmin,xmax,ymin,ymax,zmin,zmax,Name,Value)

38

Description

q = integral3(fun,xmin,xmax,ymin,ymax,zmin,zmax) approximates the integral of the

function z = fun(x,y,z) over the

region xmin ≤ x ≤ xmax, ymin(x) ≤ y ≤ ymax(x) and zmin(x,y) ≤ z ≤ zmax(x,y).

options with one or more Name,Value pair arguments.

Questions:

1. The Spar Extension of the Airfoil NACA 2414 in a section middle of the Airfoil is

evaluated by integrating the Equation of the Curvature by keeping the limits as

distances of both the ends from the Root Chord Locations respectively. Get the Spar

Extension value of a section whose endpoints are at a distances of 4 and 9 meters

respectively from the Root Chord respectively.

MATLAB CODES:

>> fun = @(x) (1+x)./(x+2.*sqrt(x)-3);

>> q=integral(fun,4,9)

Result:

q=

4.4280

Interpretation:

From the Integration, we get to know that a spar of length 4.428m is required to be placed at

that area of the airfoil.

39

geostationary orbit. The satellite has to transferred to a elliptical orbit using

Hoffmann’s Transfer process. For this, the onboard impulse Thrusters2*cos(x) have

to generate impulse thrust to rotate the satellite at a particular angle. In Hoffmann’s

transfer, the satellite has to rotated to an angle of 90 degrees. The amount of thrust

required is obtained by integrating the equation with the desired limits.

MATLAB Codes:

>> fun = @(x) sin(x).*4.*cos(x).*exp(2*cos(x)+1);

>> r=integral(fun,0,pi/2)

Result:

r=

22.8038

Interpretation:

Hence an Impulse force of 22.80 Newtons has to be propelled by the onboard

thrusters in order to switch to the desired orbit.

3. When an Aircraft flies in supersonic speeds, there is heat generation on the outer

surfaces of the aircraft. Considering the surface to be a 2 dimensional object, The heat

generation is taken in 2 components which is in X and Y direction. On a particular

areal section of an aircraft flying at Mach 2.8, The heat generation in Kilojoules is

given by integrating the given equation with the area magnitudes as limits. Obtain the

heat generated on this Particular aircraft.

MATLAB Code:

>> func = @(x,y) 1+8.*x.*y;

>> s=integral2(func,0,3,1,2)

Result:

s = 57

40

Interpretation:

The Heat generated on that particular part of the surface is obtained to be 57

Kilojoules by the method of double Integration.

level at a speed of Mach 3.9. A shock wave is formed in the form of a 3 dimensional

cone. The volume inside that Shock Cone is known as the zone of Action where there

is disturbance of the air molecules in it. Integrating the below equation gives the

Volume of the Mach Cone which is termed as the zone of action in this case of

supersonic flight.

Integrate and obtain the Volume of zone of action for this case.

MATLAB Code:

>> funct = @(x,y,z) x.*y.*z;

>> xmin=0

>> xmax=1;

>> ymin=0;

>> ymax=1;

>> zmin=@(x,y) sqrt(x.^2+y.^2);

>> zmax= 2;

>> q = integral3(funct,xmin,xmax,ymin,ymax,zmin,zmax)

Result:

q=

0.375

Interpretation:

The Volume of the Mach cone or the zone of action is determined to be 0.375 Cubic

kilometres.

41

Theory:

Trapz:

Syntax

Q = trapz(Y)

Q = trapz(X,Y)

Q = trapz(___,dim)

Description

Q = trapz(Y) computes the approximate integral of Y via the trapezoidal method with unit

spacing. The size of Y determines the dimension to integrate along:

• If Y is a vector, then trapz(Y) is the approximate integral of Y.

• If Y is a matrix, then trapz(Y) integrates over each column and returns a row vector of

integration values.

• If Y is a multidimensional array, then trapz(Y) integrates over the first dimension whose size

does not equal 1. The size of this dimension becomes 1, and the sizes of other dimensions

remain unchanged.

• If X is a vector of coordinates, then length(X) must be equal to the size of the first dimension

of Y whose size does not equal 1.

• If X is a scalar spacing, then trapz(X,Y) is equivalent to X*trapz(Y).

Q = trapz(___,dim) integrates along the dimension dim using any of the previous syntaxes.

You must specify Y, and optionally can specify X. If you specify X, then it can be a scalar or

a vector with length equal to size(Y,dim). For example, if Y is a matrix,

then trapz(X,Y,2) integrates each row of Y.

Cumtrapz:

Syntax

Q = cumtrapz(Y)

Q = cumtrapz(X,Y)

42

Q = cumtrapz(___,dim)

Description

method with unit spacing. The size of Y determines the dimension to integrate along:

• If Y is a vector, then cumtrapz(Y) is the cumulative integral of Y.

• If Y is a matrix, then cumtrapz(Y) is the cumulative integral over each column.

• If Y is a multidimensional array, then cumtrapz(Y) integrates over the first dimension whose

size does not equal 1.

by X.

• If X is a vector of coordinates, then length(X) must be equal to the size of the first dimension

of Y whose size does not equal 1.

• If X is a scalar spacing, then cumtrapz(X,Y) is equivalent to X*cumtrapz(Y).

Q = cumtrapz(___,dim) integrates along the dimension dim using any of the previous

syntaxes. You must specify Y, and optionally can specify X. If you specify X, then it can be a

scalar or a vector with length equal to size(Y,dim). For example, if Y is a matrix,

then cumtrapz(X,Y,2) cumulatively integrates each row of Y.

SQuestions:

1. In the experimentation process of measure surface pressure distribution across

a wing surface placed in a supersonic wind tunnel, the Net Lift generated is

obtained by integrating the a depending pressure factor with respect to the

distance or the position of the sensor with respect to the leading edge tip with

the help on integration with unit spacing. The data of the dependent factor and

the sensor position is given as follows:

0 1

0.1 0.6111

0.2 0.3889

0.4 0.222

0.8 0.556

1.5 0.333

2.7 0.7222

3.9 0.555

5.2 0.3889

6.5 0.6578

7.8 0.5642

9 0.1203

43

10 0.892

Find the value of lift generated using the given data with the help of Unit Spacing Integration.

MATLAB Code:

>> location = [0 0.1 0.2 0.4 0.8 1.5 2.7 3.9 5.2 6.5 7.8 9 10]

>> Factor = [1 0.6111 0.3889 0.222 0.556 0.333 0.7222 0.555 0.3889 0.6578 0.5642 0.1203

0.892]

>> y=trapz(location,Factor)

Result:

y=

5.0629

Interpretation:

Hence a net Lift of 5 Newtons is generated on the scaled-down wing model which is being

tested in the supersonic Wind Tunnel.

2. The braking system of the landing Wheels of a Long haul Boeing 787 is being

tested. The Static Braking Distance of the wheels is dependent on the

Coefficient of Static Friction between the disk brakes used in the flight. The

Total braking distance is obtained by integrating the Coefficient of Static

Friction values per unit time in minutes. Gives the values of Coefficient of

Static friction of a trial. Compute the Static Braking Distance of the flight.

1 1.13

2 1.68

3 1.86

4 2.032

5 2.521

6 3.12

44

7 4.213

8 5.658

9 7.1453

10 9.546

MATLAB Code:

>> Friction_factor = [1.13 1.68 1.86 2.032 2.521 3.12 4.213 5.658 7.1453 9.546];

>> x=cumtrapz(Friction_factor)

Result:

x=

Columns 1 through 6

Columns 7 through 10

Interpretation:

The Static Braking Distances for each time Interval in minutes have been computed for this

Flight.

45

Theory:

[t,y] = ode45(odefun,tspan,y0), where tspan = [t0 tf], integrates the system of differential

equations y'=f(t,y) from t0 to tf with initial conditions y0. Each row in the solution

array y corresponds to a value returned in column vector t.

All MATLAB® ODE solvers can solve systems of equations of the form y'=f(t,y), or

problems that involve a mass matrix, M(t,y)y'=f(t,y). The solvers all use similar syntaxes.

The ode23s solver only can solve problems with a mass matrix if the mass matrix is

constant. ode15s and ode23t can solve problems with a mass matrix that is singular, known as

differential-algebraic equations (DAEs). Specify the mass matrix using the Mass option

of odeset.

ode45 is a versatile ODE solver and is the first solver you should try for most problems.

However, if the problem is stiff or requires high accuracy, then there are other ODE solvers

that might be better suited to the problem. See Choose an ODE Solver for more information.

which is an argument created using the odeset function. For example, use

the AbsTol and RelTol options to specify absolute and relative error tolerances, or

the Mass option to provide a mass matrix.

[t,y,te,ye,ie] = ode45(odefun,tspan,y0,options) additionally finds where functions of (t,y),

called event functions, are zero. In the output, te is the time of the event, ye is the solution at

the time of the event, and ie is the index of the triggered event.

For each event function, specify whether the integration is to terminate at a zero and whether

the direction of the zero crossing matters. Do this by setting the 'Events'property to a

function, such as myEventFcn or @myEventFcn, and creating a corresponding function:

[value,isterminal,direction] = myEventFcn(t,y). For more information, see ODE Event

Location.

sol = ode45(___) returns a structure that you can use with deval to evaluate the solution at

any point on the interval [t0 tf]. You can use any of the input argument combinations in

previous syntaxes.

[t,y] = ode23(odefun,tspan,y0), where tspan = [t0 tf], integrates the system of differential

equations y'=f(t,y) from t0 to tf with initial conditions y0. Each row in the solution

array y corresponds to a value returned in column vector t.

All MATLAB® ODE solvers can solve systems of equations of the form y'=f(t,y), or

problems that involve a mass matrix, M(t,y)y'=f(t,y). The solvers all use similar syntaxes.

The ode23s solver only can solve problems with a mass matrix if the mass matrix is

constant. ode15s and ode23t can solve problems with a mass matrix that is singular, known as

differential-algebraic equations (DAEs). Specify the mass matrix using the Mass option

of odeset.

46

which is an argument created using the odeset function. For example, use

the AbsTol and RelTol options to specify absolute and relative error tolerances, or

the Mass option to provide a mass matrix.

[t,y,te,ye,ie] = ode23(odefun,tspan,y0,options) additionally finds where functions of (t,y),

called event functions, are zero. In the output, te is the time of the event, ye is the solution at

the time of the event, and ie is the index of the triggered event.

For each event function, specify whether the integration is to terminate at a zero and whether

the direction of the zero crossing matters. Do this by setting the 'Events'property to a

function, such as myEventFcn or @myEventFcn, and creating a corresponding function:

[value,isterminal,direction] = myEventFcn(t,y). For more information, see ODE Event

Location.

sol = ode23(___) returns a structure that you can use with deval to evaluate the solution at

any point on the interval [t0 tf]. You can use any of the input argument combinations in

previous syntaxes.

Questions:

1. Calculate the rate of temperature change with respect to time in the conduction

heat transfer of rod of length 10 metre. The material has thermal conductivity

of 100W/m2 K and the area of the rod be 12*10-2 metre2.

MATLAB Code:

Q=(10:1:100)

k=100

A=12*10^-2

t=(Q./-k*A)

tspan=[0 400]

y0=0

[Q,t] = ode45(@(Q,t)Q./-k*A, tspan, y0)

[Q,t]=meshgrid(-10:1:10)

R=Q./t

surf(Q,t,R)

xlabel('Heat flux')

ylabel('Temperature change')

zlabel('resistance')

title('Variation of heat transfer by conduction wrt heat flux, temperature,resistance along the

rod')

47

Results:

2. There is spherical tank for storing water. The tank is filled through a hole in

the top and drained through a hole in the bottom. If the tank’s radius is r, you

can use integration to show that the volume of water in the tank as a function

of its height h is given by

ℎ3

𝑉(ℎ) = 𝜋ℎ2 𝑟 − 𝜋

3

Find the Draining rate from the tank.

Solution:

Torricelli’s principle states that the liquid ow rate through the hole is

proportional to the square root of the height h. Further studies in fluid

mechanics have identified the relation more precisely, and the result is that the

volume ow rate through the hole is given by

𝑞 = 𝐶𝑑 𝐴√2𝑔ℎ

where A is the area of the hole, g is the acceleration due to gravity, and Cd is

an experimentally determined value that depends partly on the type of liquid.

For water, Cd=0.6 is a common value. We can use the principle of

conservation of mass to obtain a

48

differential equation for the height h. Applied to this tank, the principle says

that the rate of change of liquid volume in the tank must equal the ow rate out

of the tank; that is,

𝑑ℎ 0.0334√ℎ

=−

𝑑𝑡 10ℎ − ℎ2

MATLAB Code:

t=(0:1:247);

h=(0:1:10);

[t, h]= ode45 (@(t,h) (sqrt(h))/(10*h+h^2),[0,2475], 10)

plot(t,h) ,xlabel('Time (sec)'), ylabel('Height (ft)')

[t, y] = ode45(@(t,y) 2*exp(-10*t) ,tspan, 2);

Results:

49

Interpretation:

The resulting plot is shown in Figure. Note how the height changes more rapidly when the

tank is nearly full or nearly empty. This is to be expected because of the effects of the tank’s

curvature. The tank empties in 2475 sec, or 41 min. This value is not grossly different from

our rough estimate of 52 min, so we should feel comfortable accepting the numerical results.

The value of the nominal time of 2475 sec was found by increasing the nominal time until the

plot showed that the height became 0.

attached to a rod whose mass is small compared to m. The rod’s length is L.

The equation of motion for this pendulum is which is linear and has the

solution

𝑔

𝜃(𝑡) = 𝜃(0) cos √ 𝑡

𝐿

MATLAB Code:

g = 9.81; L = 1;

xdot = [x(2); -(g/L)*sin(x(1))];

[ta, xa] = ode45(@pendulum, [0,5], [0.5, 0]);

[tb, xb] = ode45(@pendulum, [0,5], [0.8*pi, 0]);

plot(ta, xa(:,1), tb,xb(:,1)), xlabel ('Time (s)')

ylabel('Angle (rad)'), gtext('Case 1'), gtext('Case 2')

Results:

50

Theory:

In mathematics and science, a nonlinear system is a system in which the change of the output

is not proportional to the change of the input. Nonlinear problems are of interest to engineers,

biologists, physicists, mathematicians, and many other scientists because most systems are

inherently nonlinear in nature. Nonlinear dynamical systems, describing changes in variables

over time, may appear chaotic, unpredictable, or counterintuitive, contrasting with much

simpler linear systems.

system of equations, which is a set of simultaneous equations in which the unknowns (or the

unknown functions in the case of differential equations) appear as variables of a polynomial

of degree higher than one or in the argument of a function which is not a polynomial of

degree one. In other words, in a nonlinear system of equations, the equation(s) to be solved

cannot be written as a linear combination of the unknown variables or functions that appear

in them. Systems can be defined as nonlinear, regardless of whether known linear functions

appear in the equations. In particular, a differential equation is linear if it is linear in terms of

the unknown function and its derivatives, even if nonlinear in terms of the other variables

appearing in it.

As nonlinear dynamical equations are difficult to solve, nonlinear systems are commonly

approximated by linear equations (linearization). This works well up to some accuracy and

some range for the input values, but some interesting phenomena such as solitons, chaos, and

singularities are hidden by linearization. It follows that some aspects of the dynamic

behaviour of a nonlinear system can appear to be counterintuitive, unpredictable or even

chaotic. Although such chaotic behaviour may resemble random behaviour, it is in fact not

random. For example, some aspects of the weather are seen to be chaotic, where simple

changes in one part of the system produce complex effects throughout. This nonlinearity is

one of the reasons why accurate long-term forecasts are impossible with current technology.

NONSTIFF ODES

This page contains two examples of solving non-stiff ordinary differential equations using

ode45. MATLAB has three solvers for non-stiff ODEs.

• ode45

• ode23

• ode113

For most non-stiff problems, ode45 performs best. However, ode23 is recommended for

problems that permit a slightly cruder error tolerance or in the presence of moderate stiffness.

Likewise, ode113 can be more efficient than ode45 for problems with stringent error

tolerances.

51

If the non-stiff solvers take a long time to solve the problem or consistently fail the

integration, then the problem might be stiff. See for more information.

STIFF ODES

This page contains two examples of solving stiff ordinary differential equations using ode15s.

MATLAB® has four solvers designed for stiff ODEs.

• ode15s

• ode23s

• ode23t

• ode23tb

For most stiff problems, ode15s performs best. However, ode23s, ode23t, and ode23tb can be

more efficient if the problem permits a crude error tolerance.

Questions:

with respect to amount of thrust generated by the Engine. The Fuel

inlet valve has to constantly controlled to control the fuel input.

The Fuel consumption varies with the thrust differentially with the

equation:

𝑦 = 𝑥′2 − 3𝑥 + 27

Solve the equation for data of Thrust and Fuel input Values.

52

MATLAB Code:

Fun=@(x,y) y=x1^2-3*x+27

A= [0 12];

B = 27;

plot(x,y,'-o')

Result:

A=

0.121

1.3721

1.7443

1.1164

1.4885

3.3492

5.2098

7.0705

8.9312

12.1312

15.3312

53

18.5312

21.7312

24.9312

28.1312

31.3312

34.5312

37.7312

40.9312

44.1312

47.3312

50.5312

53.7312

56.9312

60.1312

63.3312

66.5312

69.7312

72.9312

76.1312

79.3312

82.5312

85.7312

54

88.9312

92.1312

95.3312

98.5312

101.7312

104.9312

108.1312

111.3312

114.5312

117.7312

120.9312

124.1312

125.0984

126.0656

127.0328

128.0000

B=

1.0+06 *

55

0.0200

0.0211

0.0223

0.0237

0.0252

0.0353

0.0491

0.0668

0.0884

0.1344

0.1918

0.2606

0.3408

0.4323

0.5352

0.6494

0.7750

0.9120

1.0603

1.2200

1.3911

1.5736

56

1.7674

1.9726

2.1891

2.4170

2.6563

2.9069

3.1689

3.4423

3.7270

4.0232

4.3306

4.6495

4.9797

5.3212

5.6742

6.0385

6.4142

6.8012

7.1996

7.6094

8.0305

8.4630

57

8.9069

9.0433

9.1807

9.3192

9.4587

Graph:

Interpretation:

Thus different values of Fuel input factor for different thrusts generated by the engines are

being computed and plotted for observations.

58

altitudes of at cold temperatures. Ina scenario, where Gulfstream 4 is flying at

higher altitudes, the ice formation on its wings is dependent on the second

differential of the Ambient temperature around which it is flying. The relation

is given by the differential equation:

𝟐

𝒚′′ − 𝒚′ = 𝒕𝟐 𝒆𝒕

MATLAB Code:

fun=@(y,t) y2-y1^2=t.^2*exp(t)

A= [0 1.41];

B = 5.65;

plot(a,b,'-o')

Result:

a=

1.343

1.2310

1.2230

1.5630

59

0.7800

0.7050

0.8460

0.9870

1.1280

1.2690

1.4100

b=

5.6500

5.6898

5.8090

6.0079

6.2862

6.6441

7.0814

7.5983

8.1948

8.8707

9.6262

60

Graph:

Interpretation:

Thus the Deposition of ice gradients for a given range of temperatures are being computed.

3. The visibility of the Aircraft’s Wing mounted lights varies with the change in

humidity. The expresssion that gives a relation between the intensity from the

light with the humidity is given by:

𝑦′′2 + 3𝑦 = 𝑡 3 − 1

Where y denotes the Visibility in meters and t represents he humidity present in that place.

Solve this differential equation using MATLAB.

61

MATLAB Code:

fun=@(y,t) y2.^2+3*y=t.^3-1

A= [5 1];

B = 2;

plot(x,y,'-o')

Result:

m=

5.0000

5.0000

5.0000

5.0000

5.0000

5.0000

5.0000

-2.9999

-2.9998

-2.9997

-2.9993

62

-2.9987

-1.9973

-1.9946

-1.9892

-1.9784

-1.9568

-1.9136

-1.8273

-1.6546

-1.3546

-1.0546

-0.7546

-0.4546

-0.1546

0.1454

0.4454

0.7454

1.0000

63

n=

-0.0000

-0.0000

-0.0001

-0.0001

-0.0002

-0.0005

-0.0010

-0.0020

-0.0040

-0.0081

-0.0162

-0.0323

-0.0646

-0.1287

-0.2558

-0.5052

-0.9853

-1.8737

-3.3886

64

-5.3233

-6.5786

-7.3495

-7.7827

-7.9760

-7.9787

-7.7918

-7.3672

-6.7500

Interpretation:

Hence the variation between these two factors are being computed.

65

Theory:

A parabolic partial differential equation is a type of partial differential equation (PDE).

Parabolic PDEs are used to describe a wide variety of time-dependent phenomena, including

heat conduction, particle diffusion, and pricing of derivative investment instruments.

To define the simplest kind of parabolic PDE, consider a real-valued function u(x,y) of two

independent real variables, x and y. A second-order, linear, constant-coefficient PDE for

takes the form

and this PDE is classified as being parabolic if the coefficients satisfy the condition.

Usually x represents one-dimensional position and y represents time, and the PDE is solved

subject to prescribed initial and boundary conditions.

The name "parabolic" is used because the assumption on the coefficients is the same as the

condition for the analytic geometry equation

where u(x,t) is the temperature at time t and at position x along a thin rod, and α is a positive

constant (the thermal diffusivity). The symbol Ut signifies the partial derivative of u with

respect to the time variable t, and similarly Uxx is the second partial derivative with respect

to x. For this example, t plays the role of y in the general second-order linear PDE: A=𝛼, E=-

1, and the other coefficients are zero.

66

Functions:

1. pdepe :

pdepe Solve initial-boundary value problems for systems of parabolic and elliptic PDEs in

one space variable and time. In the form of:

𝜕𝑢 𝜕𝑢 𝜕 𝑚 𝜕𝑢 𝜕𝑢

𝑐 (𝑥, 𝑡, 𝑢, ) = 𝑥 −𝑚 (𝑥 𝑓(𝑥, 𝑡, 𝑢, )) + 𝑠(𝑥, 𝑡, 𝑢, )

𝜕𝑥 𝜕𝑡 𝜕𝑥 𝜕𝑥 𝜕𝑥

The PDEs hold for t0 ≤ t ≤ tf and a ≤ x ≤ b. The interval [a,b] must be finite. m can be 0, 1, or

2, corresponding to slab, cylindrical, or spherical symmetry, respectively. If m > 0, then a

must be ≥ 0.

In the Equation, f (x,t,u,∂u/∂x) is a flux term and s (x,t,u,∂u/∂x) is a source term. The

coupling of the partial derivatives with respect to time is restricted to multiplication by a

diagonal matrix c (x,t,u,∂u/∂x). The diagonal elements of this matrix are either identically

zero or positive. An element that is identically zero corresponds to an elliptic equation and

otherwise to a parabolic equation. There must be at least one parabolic equation. An element

of c that corresponds to a parabolic equation can vanish at isolated values of x if those values

of x are mesh points. Discontinuities in c and/or s due to material interfaces are permitted

provided that a mesh point is placed at each interface.

sol = pdepe(m,pdefun,icfun,bcfun,xmesh,tspan)

sol = pdepe(m,pdefun,icfun,bcfun,xmesh,tspan,options)

[sol,tsol,sole,te,ie] = pdepe(m,pdefun,icfun,bcfun,xmesh,tspan,options)

Where, m:

1, or spherical = 2.

pdefun:

67

icfun :

bcfun:

xmesh:

A vector [x0, x1, ..., xn] specifying the points at which a numerical solution is requested for

every value in tspan. The elements of xmesh must satisfy x0 < x1 < ... < xn. The length of

xmesh must be >= 3.

tspan:

A vector [t0, t1, ..., tf] specifying the points at which a solution is requested for every value in

xmesh. The elements of tspan must satisfy t0 < t1 < ... < tf. The length of tspan must be >= 3.

options:

Some options of the underlying ODE solver are available in pdepe: RelTol, AbsTol,

NormControl, InitialStep, MaxStep, and Events. In most cases, default values for these

options provide satisfactory solutions. See odeset for details.

2. pdeval :

pdeval Evaluates numerical solution of PDE using output of pdepe and its syntax is:

[uout,duoutdx] = pdeval(m,x,ui,xout)

Where , m:

Symmetry of the problem: slab = 0, cylindrical = 1, spherical = 2. This is the first input

argument used in the call to pdepe.

x:

A vector [x0, x1, ..., xn] specifying the points at which the elements of ui were computed.

This is the same vector with which pdepe was called.

68

ui:

A vector sol(j,:,i) that approximates component i of the solution at time tf and mesh points

xmesh, where sol is the solution returned by pdepe.

xout:

A vector of points from the interval [x0,xn] at which the interpolated solution is requested.

Questions:

1. Solve the Heat Equation using MATLAB.

MATLAB Code:

A = tmax/((nt+1)^2);

y = linspace(0,ymax,my);

t = A*((1:mt)+1).^2;

u = pdepe(0,@pdfslpde,@pdfslic,@pdfslbc,y,t,[],mu,Umax);

69

MATLAB.

MATLAB Code:

A = tmax/((qt+1)^2);

n = linspace(0,nmax,qn);

t = A*((1:qt)+1).^2;

v = pdepe(0,@pdfslpde,@pdfslic,@pdfslbc,n,t,[],qu,vmax);