x=1.02254785;
y=fi(x,1,15,3);
error=(y-x)^2
فى ايرور بيطلع ف السطر الاخير بس مش عارف سببة اية ممكن تساعدونى ف حلة
تانى حاجة انا لو عامل فور لوب على مثلا x
مثلا
for x=1:10
for z=1:100
y=x*(z-1)
end
end
عايز ارسم x ,y
يعنى ارسم لما x 1 قيم الy
وهكذا بستخدم امر plot(x,y)
ولا فى حاجة تانية
شكرا مقدما
بالنسبة للجزء الاول يمكن تنفيذه كما يلى
x=1.02254785;
y=fi(x,1,15,3);
z = y - x;
error=z.data ^2
والجزء الثانى يكون كما يلى
hold on
for x=1:10
for z=1:100
y=x*(z-1);
plot(x,y)
end
end
hold off
شكرا لردك السريع
بس هتقل عليك شوية
هو الكود اللى باستخدم الحاجات دى فية
هو ده
clc;close all;clear all;
% n=4
for t=-pi:0.01: pi
x=sin(t);
figure;
plot(t,x);
hold on
grid on
for ii=1:length(t)
for n=1:10
y=fi(x,1,(2^(n+1)),(2^(n/2)));
figure;
plot(t,y,'r');
hold on
end
z = y - x;
error=z.data ^2;
figure;
plot(n,error)
hold on
gride on
end
end
المفروض انى بارسم الشكل الاول و التانى و التالت كل واحد فى figure
بس المشكلة الاولى انة بيرسم كل نقطة فى شكل
تانى حاجة بيطلع ايرور
هو ده اللى المفروض الكود يعملة “” 1) Generate any signal , quantize it to 2^(n+1 )bits (Hint: search for the fi command) , assume 1 sign bit and the other bits are equally divided between the integer and the fraction part( n bits each).Draw the quantization error on the Y axis versus n bits on the horizontal axis , the quantization error is defined as( quantized value-true value).^2""
ااااسف انى طولت عليك اوى كده
ضع الامر figure; خارج ال for
لانه عند كل مرة تنفيذ سيتم فتح figure جديد
لقد قمت بعمل بعض التعديلات فى البرنامج
clc; close all; clear all;
% n=4
t = -pi : 0.01 : pi;
x = sin(t);
figure;
plot(t, x);
grid on
for n = 1 : 10
y = fi(x, 1, (2 ^ (n + 1)), (2 ^ (n / 2)));
end
figure;
plot(t, y, 'r');
grid on
z = y.data - x;
error=z.^2;
figure;
plot(t, error)
grid on
شكراا ليك
الحمد لله بعد اللى قولتهولى قدرت اضبط الشكل
الحمد لله وبالتوفيق ان شاء الله فى دراستك
ونتمنى ان تشارك معنا فى المنتدى وتفيد الاخرين بما لديك
السلام عليكم شكرا لمساعدتك لى ف الكود ده
clc;close all;clear all;
n=5;
t=-pi:0.01: pi;
x=sin(t);
figure;
plot(t,x);
hold on
grid on
for ii=1:length(t)
for n=1:10
y=fi(x,1,(2^(n+1)),(2^(n/2)));
end
end
figure;
plot(t,y,‘r’);
hold on
grid on
z = y.data - x;
error=z.^2;
figure;
plot(t, error)
grid on
انا عملت فية حبة تعديلات بس بيطلعلى ايرور
التعديلات اللى عملتها انى خليت الn for 1 to 10
و حاولت احطها فى ماتريكس
بس طلعلى ايرور
انا اللى عايز اعملى
ان ال n تبقى متغير ب فور لوب
و الerror زى ما هو
بس اخر رسم يبقى مع n مش مع ال t
فى حاجة زياده لو تقدر تعدلهالى ف الفور لوب بتاعة ال n
المفروض بارسم plot(t,y,‘r’);
لو ينفع ارسم لما كل n يرسم كل واحده ف شكل يعنى n =1 فى شكل n=2 فى شكل لو ينفع
لو ما تقدرش تعملى التعديلات دى قولى ازاى تتعمل
شكرا مقدما …
جرب الاتى
clc;close all;clear all;
n=5;
t=-pi:0.01: pi;
x=sin(t);
figure;
plot(t,x);
grid on
for n=1:10
y(n, :)=fi(x,1,(2^(n+1)),(2^(n/2)));
figure;
plot(t,y(n, :),'r');
grid on
z(n, :) = y.data(n, :) - x;
error(n, :) = z(n, :) .^ 2;
end
figure;
plot(error)
grid on