How to make decreasing quadratic curve?
5 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Kalasagarreddi Kottakota
am 20 Okt. 2022
Beantwortet: Image Analyst
am 20 Okt. 2022
Hi, I am looking a decreaing quadratic of red colour in the image below. But when I script, I get the curve (in blue). Can someone help me to fix this?
clear all; close all; clc;
fs = 10200; % sampling frequency
dt = 1/fs;
T = 26; % total time
tVec = dt:dt:T; % time vector
rpm2 = 4500; f2 = rpm2/60;
rpm3 = 0; f3 = rpm3/60;
beta = (f3-f2)/T.^2; % slope rate;
finst = f2 + beta*tVec.^2.';
Speed = finst * 60;
figure()
plot(tVec, Speed)
grid on; box on;
0 Kommentare
Akzeptierte Antwort
DGM
am 20 Okt. 2022
Are you after something like this?
fs = 10200; % sampling frequency
dt = 1/fs;
T = 26; % total time
rpm2 = 4500; f2 = rpm2/60;
rpm3 = 0; f3 = rpm3/60;
tVec = dt:dt:T; % time vector
beta = (f3-f2)/T.^2; % slope rate;
finst = f3 - beta*(T-tVec).^2.';
Speed = finst * 60;
plot(tVec, Speed)
grid on; box on;
0 Kommentare
Weitere Antworten (1)
Image Analyst
am 20 Okt. 2022
Well your formula just doesn't do that. But here's something closer. At least I have the colors of the lines changing.
all_rpm2 = linspace(4500, -1000, 10);
numCurves = numel(all_rpm2)
% Create red colormap
cmap = zeros(numCurves, 3);
cmap(:, 1) = linspace(0.2, 1, numCurves)';
fs = 10200; % sampling frequency
dt = 1/fs;
T = 26; % total time
tVec = dt:dt:T; % time vector
for k = 1 : length(all_rpm2)
rpm2 = all_rpm2(k)
f2 = rpm2/60;
rpm3 = 0;
f3 = rpm3/60;
beta = (f3-f2)/T.^2; % slope rate;
finst = f2 + beta * tVec.^2.';
Speed = finst * 60;
plot(tVec, Speed, 'Color', cmap(k, :), 'LineWidth', 3)
grid on;
box on;
hold on;
end
0 Kommentare
Siehe auch
Kategorien
Mehr zu Logical finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!