Showing posts with label matlab function. Show all posts
Showing posts with label matlab function. Show all posts

# meshgrid matlab Function:-

Helps to generate X and Y matrices for three-dimensional plots.

## Syntax For meshgrid: -

```[X,Y] = meshgrid(x,y)
[X,Y] = meshgrid(x)
[X,Y,Z] = meshgrid(x,y,z)```

## Description for meshgrid matlab Function

• meshgrid function will help to trans transforms the given domain which is specified by the  x and y into arrays X and Y and these array can be used to check the two variables and three-dimensional mesh/surface plots.
•  Output rows of array X will be copies of x vector; same as the columns  output array Y will be copies of y vector
•  [X,Y] = meshgrid(x) is like [X,Y] = meshgrid(x,x).
•  [X,Y,Z] = meshgrid(x,y,z) helps to produces the three-dimensional arrays which is used to check the desired functions of three variables and three-dimensional volumetric plots.

# Important Note for meshgrid matlab Function

•  The meshgrid function in MATLAB is same as the ndgrid function but the point that should be remembered that is "in meshgrid function the order of  first two input and output arguments is switched"

[X,Y,Z] = meshgrid(x,y,z)

gives the same result as

[Y,X,Z] = ndgrid(y,x,z)

•   meshgrid function in MATLAB is surely suited for two- or three-dimensional Cartesian space.
•  ndgrid fucntion in MATLAB is suited for multidimensional problems that are not spatially based.

# Example for meshgrid matlab Function

```    [X,Y] = meshgrid(1:3,10:14)

X =

1     2     3
1     2     3
1     2     3
1     2     3
1     2     3

Y =

10    10    10
11    11    11
12    12    12
13    13    13
14    14    14

use meshgrid to create a surface plot of a function.

[X,Y] = meshgrid(-2:.2:2, -2:.2:2);
Z = X .* exp(-X.^2 - Y.^2);
surf(X,Y,Z)
```

 meshgrid to create a surface plot of a function.

## fprintf command And fprintf format in MATLAB

•  The fprintf command in MATLAB Programming use to displays formatted text which is centered on the icon and this fprint function can display formatSpec with a contents of var.
• `formatSpec`  in MATLAB can be a character vector with the single quotes, or a string scalar.

## Formatting for the fprint function in MATLAB : -

•  formatting is starts with the a percentage sign, % and it will end with the conversion character.
• Remember conversion character is required in formatting Operator.
• But you can use the  flags, field , identifier,width, and subtype,precision operators between % and conversion character.

## List for the Conversion Character

 Conversion Character in MATLAB

## Example of fprint function in MATLAB

```The command

fprintf('YES YES');

displays this text 'YES YES' on the icon.

fprintf('YES YES = %d',16);

uses the decimal notation format (%d) to display the variable 16.```

## Using fprintf in MATLAB With Function

Let's see this example for define a function in MATLAB : -
```function []= fun2let(n)
if n > 90.00
elseif n<=89.49 && n>=80.00
% YOU COMPLETE YOUR FUNCTION WITH OTHER TESTS
elseif n<59.5
fprintf('>> letter grade to %d is:Fail\n',n)
end
end```

## fft matlab Function And ftt code with Example

Fast Fourier transform of fft function in matlab.

## Syntax:-

```Y = fft(X)
Y = fft(X,n)
Y = fft(X,n,dim)```

## Discprition for fft matlab Function

If x is an vector then it will return the Fourier transform of that vector

Let x is an matrix then fft(X) assume the colum as a vactory and return Fourier transform of each column.

Now let assume X is an multidimensional array then fft(X) treats the values of first array dimension only if the size of that array is not equal to 1 as vector and gives the Fourier transform of each vector

# Cases with the fft() MATLAB Function

Y = fft(X,n) returns the n-point DFT.

## Case 1

X is an vector and the length of X is lower then n. X will be padded with trailing zeros to length n

## Case 2

X is an vector and the length of X is Higher then n. X will be truncated to length n

## Case 2

X is an matrix then each column of that matrix treated as in the vector case

## Case 2

multidimensional array X is treated as like fft(X) the "first array dimension only if the size of that array is not equal to 1" treated as in the vector case

Y = fft(X,n,dim) gives the Fourier transform along with the dimension dim.

## Example Code For ftt() function in MATLAB

Use the help of Fourier transforms to find the frequency components of a signal buried in noise.

```Fs = 1000;            % Sampling frequency
T = 1/Fs;             % Sampling period
L = 1500;             % Length of signal
t = (0:L-1)*T;        % Time vector
Form a signal containing a 50 Hz sinusoid of amplitude 0.7 and a 120 Hz sinusoid of amplitude 1.

S = 0.7*sin(2*pi*50*t) + sin(2*pi*120*t);

Corrupt the signal with zero-mean white noise with a variance of 4.

X = S + 2*randn(size(t));

Plot the noisy signal in the time domain. It is difficult to identify the frequency components by looking at the signal X(t).

plot(1000*t(1:50),X(1:50))
title('Signal Corrupted with Zero-Mean Random Noise')
xlabel('t (milliseconds)')
ylabel('X(t)')

Compute the Fourier transform of the signal.

Y = fft(X);

Compute the two-sided spectrum P2. Then compute the single-sided spectrum P1 based on P2 and the even-valued signal length L.

P2 = abs(Y/L);
P1 = P2(1:L/2+1);
P1(2:end-1) = 2*P1(2:end-1);

Define the frequency domain f and plot the single-sided amplitude spectrum P1. The amplitudes are not exactly at 0.7 and 1, as expected, because of the added noise. On average, longer signals produce better frequency approximations.

f = Fs*(0:(L/2))/L;
plot(f,P1)
title('Single-Sided Amplitude Spectrum of X(t)')
xlabel('f (Hz)')
ylabel('|P1(f)|')
Now, take the Fourier transform of the original, uncorrupted signal and retrieve the exact amplitudes, 0.7 and 1.0.

Y = fft(S);
P2 = abs(Y/L);
P1 = P2(1:L/2+1);
P1(2:end-1) = 2*P1(2:end-1);

plot(f,P1)
title('Single-Sided Amplitude Spectrum of S(t)')
xlabel('f (Hz)')
ylabel('|P1(f)|')
```

## OUTPUT For Example of fft () matlab:-

 fft () matlab output

 fftshift matlab

 fourier transform matlab

## Learn about the Matlab linspace function With Example

Matlab linspace is used to Generate linearly spaced vector.

## Syntax for Matlabn Linspace: -

```y = linspace(x1,x2)
y = linspace(x1,x2,n)```

• y = linspace(x1,x2) give a row vector which is made with the 100 points with equal distance between x1 and x2
• y = linspace(x1,x2,n) return the n number of points and these point keep the distance of (x2-x1)/(n-1).
• This Matlab linspace function is very similar to the colon operator, “:” But linspace function in matlab direct control over the number of points and always include the endpoints.

# Example of Matlab linspace

```Create a vector of 100 evenly spaced points in the interval [-5,10].
y = linspace(-5,10);```

```Create a vector of 7 evenly spaced points in the interval [-5,7].
y1 = linspace(-5,7,7)```

## Important points : -

• x1 and x2 gives the interval for points which is generated by Matlab linspace.
• Data Types: single | double | datetime | duration
• Complex Number Support: Yes