ليش ما يعطيني الا اخر القيم بالفور لوب؟
مثلا اخر صف او اخر عمود من قيمة الفور لوب
وكيف اتغلب عليها؟
ليش ما يعطيني الا اخر القيم بالفور لوب؟
مثلا اخر صف او اخر عمود من قيمة الفور لوب
وكيف اتغلب عليها؟
حتى تتغلب على هالمشكلة
عرفها على اساس انها مصفوفة
ورح اوضحلك بمثال
انتظر
لو افترضنا اننا نريد ايجاد مربع الارقام من واحد الى خمسة من خلال فور لووب
وكتبنا الكود التالي :
for i=1:5
x=i^2
;end
ثم بعد ذلك طبعنا اله التالي :
x
سيعطينا اخر قيمة لاكس لاته اكس بالطريقه هاي كل لووب ستتغير قيمتها وتأخذ اخر قيمة فقط
لذلك تظهر عندنا اخر قيمة فقط
ولكن اذا كتبنا الكود كالتالي
for i=1:5
x(i)=i^2;
end
لا حظ انني عرفت الاكس على اساس انها مصفوفة في كل لووب يضاف اليها عنصر جديد
واذا طبعنا بعد ذلك له :
x
ستظهر لنا مصفوفة بخمسة عناصر
وهو المطلوب
وصلت الفكرة ؟؟؟؟؟
لا تتردد بالسؤال
الله يبارك فيك استاذي الفاضل
مو هنا المشكلة عندي اذا حطيتها مصفوفة يطلع خطأ
واذا حطيتها عادي يعطي اخر القيم
شوف اللي عندي
dh(i)
يطلع خطأ
واذا شلت i يشتغل بس ما يعطيني الا اخر القيم
close all
clear all
clc
phi=40
for i=1:5
delta(i)=23.45*sind(((284+i)/365)*360);
omegasun(i)=(24/360)*acosd(-tand(phi)*tand(delta(i)));
daylength(i)=omegasun(i)*2;
sunrise(i)=12-omegasun(i);
sunset(i)=12+omegasun(i);
dh(i)=linspace(sunrise(i),sunset(i),daylength(i));
end
عدلها ياسعود الله يعدل حظنا وحظك ويبارك فيك
close all
clear all
clc
phi=40;
for i=1:5
delta(i)=23.45*sind(((284+i)/365)*360);
omegasun(i)=(24/360)*acosd(-tand(phi)*tand(delta(i)));
daylength(i)=omegasun(i)*2;
sunrise(i)=12-omegasun(i);
sunset(i)=12+omegasun(i);
dh(i,(1:daylength(i)))=linspace(sunrise(i),sunset(i),daylength(i))
end
الله يوفقك ويارب اكون قدرت اساعدك
الله يوفقك ويوسع لك في رزقك
اشتغل الى 10 او 11 بعدها يعطي خطأ
جرب هذا
close all
clear all
clc
phi=input ('Enter the latitude: '); % phi is the latitude which i a given value
for i=1:365
delta(i)=23.45*sind(((284+i)/365)*360); %(checked OK)
omegasun(i)=(24/360)*acosd(-tand(phi)*tand(delta(i)));
daylength(i)=omegasun(i)*2;
sunrise(i)=12-omegasun(i);
sunset(i)=12+omegasun(i);
dh(i,(1:daylength(i)))=linspace(sunrise(i),sunset(i),daylength(i));
for j=1:length(dh)
nhfn(i,j)=dh(i,j)-12;
omega(i,j)=nhfn(i,j)*360/24; % where nhfn means number of hours from the noon, it is positive afternoon and negative before the noon
theta(i,j)=acosd((cosd(phi)*cosd(delta(i))*cosd(omega(i,j)))+(sind(phi)*sind(delta(i)))); %(checked OK)
if theta(i,j)>=90
theta(i,j) = theta(i,j)-90;
else
end
nr=1.33;
r(i,j)=asind((sind(theta(i,j))/nr));
% the solar radiation Qsr is assumed to be full absorbed by the storage zone
cc(i,j)=1/(cosd(r(i,j))+nr*cosd(theta(i,j)));
dc(i,j)=1/(cosd(theta(i,j))+nr*cosd(r(i,j)));
tau(i,j)=2*nr*cosd(theta(i,j))*cosd(r(i,j))*((cc(i,j))^2+(dc(i,j))^2);
end
end
اظن انه هو الصحيح
[COLOR=#0000bb]close all
clear all
clc
phi[/color][COLOR=#007700]=[/color][COLOR=#0000bb]input [/color][COLOR=#007700]([/color][COLOR=#dd0000]'Enter the latitude: '[/color][COLOR=#007700]); % [/color][COLOR=#0000bb]phi is the latitude which i a given value
[/color][COLOR=#007700]for [/color][COLOR=#0000bb]i[/color][COLOR=#007700]=[/color][COLOR=#0000bb]1[/color][COLOR=#007700]:[/color][COLOR=#0000bb]365
delta[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700])=[/color][COLOR=#0000bb]23.45[/color][COLOR=#007700]*[/color][COLOR=#0000bb]sind[/color][COLOR=#007700]((([/color][COLOR=#0000bb]284[/color][COLOR=#007700]+[/color][COLOR=#0000bb]i[/color][COLOR=#007700])/[/color][COLOR=#0000bb]365[/color][COLOR=#007700])*[/color][COLOR=#0000bb]360[/color][COLOR=#007700]); %([/color][COLOR=#0000bb]checked OK[/color][COLOR=#007700])
[/color][COLOR=#0000bb]omegasun[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700])=([/color][COLOR=#0000bb]24[/color][COLOR=#007700]/[/color][COLOR=#0000bb]360[/color][COLOR=#007700])*[/color][COLOR=#0000bb]acosd[/color][COLOR=#007700](-[/color][COLOR=#0000bb]tand[/color][COLOR=#007700]([/color][COLOR=#0000bb]phi[/color][COLOR=#007700])*[/color][COLOR=#0000bb]tand[/color][COLOR=#007700]([/color][COLOR=#0000bb]delta[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700])));
[/color][COLOR=#0000bb]daylength[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700])=[/color][COLOR=#0000bb]omegasun[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700])*[/color][COLOR=#0000bb]2[/color][COLOR=#007700];
[/color][COLOR=#0000bb]sunrise[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700])=[/color][COLOR=#0000bb]12[/color][COLOR=#007700]-[/color][COLOR=#0000bb]omegasun[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700]);
[/color][COLOR=#0000bb]sunset[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700])=[/color][COLOR=#0000bb]12[/color][COLOR=#007700]+[/color][COLOR=#0000bb]omegasun[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700]);
[/color][COLOR=#0000bb]dh[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],([/color][COLOR=#0000bb]1[/color][COLOR=#007700]:[/color][COLOR=#0000bb]daylength[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700])))=[/color][COLOR=#0000bb]linspace[/color][COLOR=#007700]([/color][COLOR=#0000bb]sunrise[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700]),[/color][COLOR=#0000bb]sunset[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700]),[/color][COLOR=#0000bb]daylength[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700]));
for [/color][COLOR=#0000bb]j[/color][COLOR=#007700]=[/color][COLOR=#0000bb]1[/color][COLOR=#007700]:size[/color][COLOR=#007700]([/color][COLOR=#0000bb]dh,2[/color][COLOR=#007700])
[/color][COLOR=#0000bb]nhfn[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],[/color][COLOR=#0000bb]j[/color][COLOR=#007700])=[/color][COLOR=#0000bb]dh[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],[/color][COLOR=#0000bb]j[/color][COLOR=#007700])-[/color][COLOR=#0000bb]12[/color][COLOR=#007700];
[/color][COLOR=#0000bb]omega[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],[/color][COLOR=#0000bb]j[/color][COLOR=#007700])=[/color][COLOR=#0000bb]nhfn[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],[/color][COLOR=#0000bb]j[/color][COLOR=#007700])*[/color][COLOR=#0000bb]360[/color][COLOR=#007700]/[/color][COLOR=#0000bb]24[/color][COLOR=#007700]; % [/color][COLOR=#0000bb]where nhfn means number of hours from the noon[/color][COLOR=#007700], [/color][COLOR=#0000bb]it is positive afternoon [/color][COLOR=#007700]and [/color][COLOR=#0000bb]negative before the noon
theta[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],[/color][COLOR=#0000bb]j[/color][COLOR=#007700])=[/color][COLOR=#0000bb]acosd[/color][COLOR=#007700](([/color][COLOR=#0000bb]cosd[/color][COLOR=#007700]([/color][COLOR=#0000bb]phi[/color][COLOR=#007700])*[/color][COLOR=#0000bb]cosd[/color][COLOR=#007700]([/color][COLOR=#0000bb]delta[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700]))*[/color][COLOR=#0000bb]cosd[/color][COLOR=#007700]([/color][COLOR=#0000bb]omega[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],[/color][COLOR=#0000bb]j[/color][COLOR=#007700])))+([/color][COLOR=#0000bb]sind[/color][COLOR=#007700]([/color][COLOR=#0000bb]phi[/color][COLOR=#007700])*[/color][COLOR=#0000bb]sind[/color][COLOR=#007700]([/color][COLOR=#0000bb]delta[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700])))); %([/color][COLOR=#0000bb]checked OK[/color][COLOR=#007700])
if [/color][COLOR=#0000bb]theta[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],[/color][COLOR=#0000bb]j[/color][COLOR=#007700])>=[/color][COLOR=#0000bb]90
theta[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],[/color][COLOR=#0000bb]j[/color][COLOR=#007700]) = [/color][COLOR=#0000bb]theta[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],[/color][COLOR=#0000bb]j[/color][COLOR=#007700])-[/color][COLOR=#0000bb]90[/color][COLOR=#007700];
else
[/color][COLOR=#0000bb]end
nr[/color][COLOR=#007700]=[/color][COLOR=#0000bb]1.33[/color][COLOR=#007700];
[/color][COLOR=#0000bb]r[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],[/color][COLOR=#0000bb]j[/color][COLOR=#007700])=[/color][COLOR=#0000bb]asind[/color][COLOR=#007700](([/color][COLOR=#0000bb]sind[/color][COLOR=#007700]([/color][COLOR=#0000bb]theta[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],[/color][COLOR=#0000bb]j[/color][COLOR=#007700]))/[/color][COLOR=#0000bb]nr[/color][COLOR=#007700]));
% [/color][COLOR=#0000bb]the solar radiation Qsr is assumed to be full absorbed by the storage zone
cc[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],[/color][COLOR=#0000bb]j[/color][COLOR=#007700])=[/color][COLOR=#0000bb]1[/color][COLOR=#007700]/([/color][COLOR=#0000bb]cosd[/color][COLOR=#007700]([/color][COLOR=#0000bb]r[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],[/color][COLOR=#0000bb]j[/color][COLOR=#007700]))+[/color][COLOR=#0000bb]nr[/color][COLOR=#007700]*[/color][COLOR=#0000bb]cosd[/color][COLOR=#007700]([/color][COLOR=#0000bb]theta[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],[/color][COLOR=#0000bb]j[/color][COLOR=#007700])));
[/color][COLOR=#0000bb]dc[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],[/color][COLOR=#0000bb]j[/color][COLOR=#007700])=[/color][COLOR=#0000bb]1[/color][COLOR=#007700]/([/color][COLOR=#0000bb]cosd[/color][COLOR=#007700]([/color][COLOR=#0000bb]theta[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],[/color][COLOR=#0000bb]j[/color][COLOR=#007700]))+[/color][COLOR=#0000bb]nr[/color][COLOR=#007700]*[/color][COLOR=#0000bb]cosd[/color][COLOR=#007700]([/color][COLOR=#0000bb]r[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],[/color][COLOR=#0000bb]j[/color][COLOR=#007700])));
[/color][COLOR=#0000bb]tau[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],[/color][COLOR=#0000bb]j[/color][COLOR=#007700])=[/color][COLOR=#0000bb]2[/color][COLOR=#007700]*[/color][COLOR=#0000bb]nr[/color][COLOR=#007700]*[/color][COLOR=#0000bb]cosd[/color][COLOR=#007700]([/color][COLOR=#0000bb]theta[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],[/color][COLOR=#0000bb]j[/color][COLOR=#007700]))*[/color][COLOR=#0000bb]cosd[/color][COLOR=#007700]([/color][COLOR=#0000bb]r[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],[/color][COLOR=#0000bb]j[/color][COLOR=#007700]))*(([/color][COLOR=#0000bb]cc[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],[/color][COLOR=#0000bb]j[/color][COLOR=#007700]))^[/color][COLOR=#0000bb]2[/color][COLOR=#007700]+([/color][COLOR=#0000bb]dc[/color][COLOR=#007700]([/color][COLOR=#0000bb]i[/color][COLOR=#007700],[/color][COLOR=#0000bb]j[/color][COLOR=#007700]))^[/color][COLOR=#0000bb]2[/color][COLOR=#007700]);
[/color][COLOR=#0000bb]end
end
[/color]
المشكلة في الفور لووب الثانية
لاحظت التغيير
انا جربتها وما طلع اخظاء
جربها وقلي
اخوك م . سعود
شكر الله سعيك اخي المهندس سعود
بالنسبة لحجم dh
size(dh,2)
ماذا يعني الرقم 2 ولماذا 2 بالذات
ثانيا هل للتحذر الذي يظهر مشكله وماهو سببه ، اقصد هذا
Warning: Integer operands are required for colon operator when used as index.
> In test4 at 11
اشكركم كثيرا
الرقم 2 الموجود في التعليمة هو لايجاد عدد الاعمدة في المصفوفة
ولكان واحد بدل اثنين لكان عدد الصفوف
اما بالنسبه للتحذير
فهو ينبهك الى ضرورة استخدام اعداد صحيحه عند استخدام ( النقطتان الرأسيتان) ك ااندكس لمصفوفة ما
وهو لا يؤثر على سير العمل
وصلت الفكرة؟؟؟؟
نحن هنا لخدمتكم باذن الله
سلمت الايادي
وصلت الفكرة ياريس
بس باقي فيها مشكلة وحدة بعد التعديل
هو ان الصفوف (عدد ساعات النهار) تتزايد الى المنتصف بعدين تتناقص
وهذا بالبداة بحاب tau جاي مضبوط وطالعة اصفار
مفروض بالعمود الاخير واللي قبله واللي ايضا قبله في الاخير يعطي اصفار
صار مايعطي اصفار وانما يكرر الرقم
ياليت تتكرم وتشوفه يالطيب الغالي
ما انا فاهم عليك
وضح اكثر
شكرا للرد اخي سعود
انا اقصد نتائج tau
فالمفروض ان تكون بهذا الشكل (لاحظ الاصفار ) في اخر عمودين يكون الاصفار متماثلة بين الصفوف التي في الاعلى والصفوف التي في الاسفل
لان ساعات النهار او طول النهار (قيم j ) يفترض ان تبدا منخفضة فترتفع في نصف السنة ثم تعود للانخفاض
لاحظ الاصفار
12 5 3 0 0
2 1 7 0 0
8 11 3 9 0
5 1 6 3 0
4 2 3 1 7
5 4 1 9 25
7 6 3 5 0
8 2 9 1 0
1 8 2 0 0
8 6 5 0 0
بينما نتائج البرنامج في الصفوف العليا صحيحة وتعطي اصفار
لكن في الصفوف الدنيا يكرر الرقم الذي قبله مما يعني ان قيمة j مكررة في حين يجب ان لا يكون لها قيمة وعليه يعطي اصفار
مثل هذا (وضعت لك نجمة بجانب الرقم المكرر والذي يجب ام لا يكون له قيمة اي صفر بالمصفوفة )
12 5 3 0 0
2 1 7 0 0
8 11 3 9 0
5 1 6 3 0
4 2 3 1 7
5 4 1 9 25
7 6 3 5 *5
8 2 9 1 *1
1 8 2 *2 *2
8 6 5 *5 *5
واسف جدا لاني غلبتك معي
بدي وقت لحين ما اقدر اتتبعه
لكن اعدك ان شاء الله
انا مشغول الان
الحقيقة انا حاولت اتبع برنامجك
ولا حظت
ان هذه المعادلات لم افهمها
ولذلك لا يمكن ان اعرف ان النتيجة صحيحة او لأ
لم الاحظ اي تكرار
الذي تقول عنه
شكرا لك اخي سعود ومتأسفين جدا لازعاجك
لاحظ اخر ثلاث اعمدة (11،12،13) لل tau
تجد القيم مكررة وهذه هي (هذا جزء منها) لاحظ كل صف تجد اعمدته مكرره
0.5033 0.5033 0.5033
0.49748 0.49748 0.49748
0.49193 0.49193 0.49193
0.48669 0.48669 0.48669
0.48175 0.48175 0.48175
0.47713 0.47713 0.47713
0.47285 0.47285 0.47285
0.46891 0.46891 0.46891
0.46532 0.46532 0.46532
0.4621 0.4621 0.4621
0.45925 0.45925 0.45925
0.45677 0.45677 0.45677
0.45468 0.45468 0.45468
0.45299 0.45299 0.45299
0.45168 0.45168 0.45168
0.45078 0.45078 0.45078
0.45028 0.45028 0.45028
0.45018 0.45018 0.45018
0.45048 0.45048 0.45048
0.45118 0.45118 0.45118
0.45229 0.45229 0.45229
0.45379 0.45379 0.45379
0.45568 0.45568 0.45568
0.45796 0.45796 0.45796
0.46063 0.46063 0.46063
0.46366 0.46366 0.46366
0.46707 0.46707 0.46707
0.47084 0.47084 0.47084
كانت يفترض ان تكون صفر بدل التكرار