complex sine graph plotting I need help

my complex sine graph is 1050 points. I want it to be just 100 points for some other math calculations. here is the function. can someone please fix it for me so that stpFunc is 100 instead of 1050 and still graphs similarly, thanks a ton!
n = 1050;
w = [0:.005:1-0.005]';
w=repmat(w,5,1); %repmat(w,10,1);
w=[zeros(50,1);w];
t=[zeros(50,1)];
for i=1:5 %10
t=[t;i*ones(200,1)];
end
stpFunc = sin(2*pi*w.*t);
complex_sine = stpFunc'
figure; plot(stpFunc,'linewidth',3);

2 commentaires

Azzi Abdelmalek
Azzi Abdelmalek le 22 Juil 2016
Modifié(e) : Azzi Abdelmalek le 22 Juil 2016
Can you explain what your code is doing?
Osita Onyejekwe
Osita Onyejekwe le 22 Juil 2016
if you copy and paste it into the command window, it is just a sine graph that looks cool. if you say length(stpFunc) it says 1050, i just want it to be reduced to 100 so that i can put it into a a matrix of other signals i am working on

Connectez-vous pour commenter.

Réponses (2)

Star Strider
Star Strider le 22 Juil 2016
I do not understand everything you are doing. If you want ‘w’ to have a length of 100, use the linspace function:
w = linspace(0, 1, 100);
I cannot follow what you are doing with the rest of your code, so you will have to change it to work with the new ‘w’.

4 commentaires

Osita Onyejekwe
Osita Onyejekwe le 22 Juil 2016
i want stpFunc to have a length of 100....
This interpolates the original to be a length of 100, but even using the 'spline' interpolation method, the undersampling does not reproduce the original look of the function.
n = 1050;
w = [0:.005:1-0.005]';
w=repmat(w,5,1); %repmat(w,10,1);
w=[zeros(50,1);w];
t=[zeros(50,1)];
for i=1:5 %10
t=[t;i*ones(200,1)];
end
stpFunc0 = sin(2*pi*w.*t); % Original ‘stpFunc’
stpFunci = linspace(1, length(stpFunc0), 100); % Interpolation Vector
stpFunc = interp1([1:length(stpFunc0)],stpFunc0,stpFunci,'spline'); % Interpolated ‘stpFunc’
complex_sine = stpFunc';
figure; plot(stpFunc,'linewidth',3);
Osita Onyejekwe
Osita Onyejekwe le 22 Juil 2016
thank you so much, this will do!!!
Star Strider
Star Strider le 22 Juil 2016
My pleasure!
If my Answer solved your problem, please Accept it.

Connectez-vous pour commenter.

Osita Onyejekwe
Osita Onyejekwe le 22 Juil 2016

0 votes

basically i want this entire graph to be in the domain to 100 instead of 1050..im just not sure how to scale it all down..can someone please help me?

Catégories

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by