زمان کنونی: ۰۳ آذر ۱۴۰۳, ۰۹:۵۲ ق.ظ مهمان گرامی به انجمن مانشت خوش آمدید. برای استفاده از تمامی امکانات انجمن می‌توانید عضو شوید.
گزینه‌های شما (ورودثبت نام)

خطا در نرم افزار متلب

ارسال:
۱۰ فروردین ۱۳۹۳, ۱۱:۴۶ ب.ظ
خطا در نرم افزار متلب
سلام
نوروز بر همه مبارک.
یه سوال داشتم در مورد نرم افزار متلب:
'' Matrix is singular to working precision"
این هشدار در متلب به چه دلیل است و برای حل آن باید چه کرد؟
D=inv(C'*C)*C'*E
این هشدار برای خط بالاست.
برنامه به صورت زیر است:
G1=input('G1')
G2=input(G2)
for k=1:n
C(2*k-1,Smile=[G1(1,k),G2(1,k),1,0,0,0];
C(2*k,Smile=[0,0,0,G1(1,k),G2(1,k),1];
end
for h=1:n
E(2*h-1,Smile=[G1(2,h)];
E(2*h,Smile=[G2(2,h)];
end
D=inv(C'*C)*C'*E
ممنون
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
ارسال:
۱۱ فروردین ۱۳۹۳, ۰۱:۵۶ ب.ظ (آخرین ویرایش در این ارسال: ۱۲ فروردین ۱۳۹۳ ۰۹:۵۶ ق.ظ، توسط Morris.)
RE: خطا در نرم افزار متلب
لطفا کد ها را در تگ مربوطه قرار دهید.

کد:
G1=input('G1')
G2=input(G2)
for k=1:n
   C(2*k-1,:)=[G1(1,k),G2(1,k),1,0,0,0];
   C(2*k,:)=[0,0,0,G1(1,k),G2(1,k),1];
end
for h=1:n
   E(2*h-1,:)=[G1(2,h)];
   E(2*h,:)=[G2(2,h)];
end
D=inv(C'*C)*C'*E
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس‌گزاری شده توسط: ag13
ارسال:
۱۱ فروردین ۱۳۹۳, ۰۲:۲۶ ب.ظ
خطا در نرم افزار متلب
احتمالا از دید متلب با دقت خوبی C'*C منفرده.
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس‌گزاری شده توسط: ag13
ارسال:
۱۲ فروردین ۱۳۹۳, ۱۰:۱۵ ق.ظ
RE: خطا در نرم افزار متلب
البته مطمئن نیستم مشکل از کجا است ولی کد شما کمی عجیب است.

به این دستور توجه کنید :
کد:
for k=1:n
   C(2*k-1,:)=[G1(1,k),G2(1,k),1,0,0,0];
   C(2*k,:)=[0,0,0,G1(1,k),G2(1,k),1];
end

وقتی مقدار k برابر ۱ باشد، سطر شماره صفر از ماتریس C طلب شده است در حالی که در متلب اندیس ماتریس ها و بردار ها ۱ شمار است.
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس‌گزاری شده توسط: ag13
ارسال:
۱۲ فروردین ۱۳۹۳, ۱۲:۴۳ ب.ظ (آخرین ویرایش در این ارسال: ۱۲ فروردین ۱۳۹۳ ۰۱:۳۸ ب.ظ، توسط ag13.)
RE: خطا در نرم افزار متلب
(۱۲ فروردین ۱۳۹۳ ۱۰:۱۵ ق.ظ)Morris نوشته شده توسط:  البته مطمئن نیستم مشکل از کجا است ولی کد شما کمی عجیب است.

به این دستور توجه کنید :
کد:
for k=1:n
   C(2*k-1,:)=[G1(1,k),G2(1,k),1,0,0,0];
   C(2*k,:)=[0,0,0,G1(1,k),G2(1,k),1];
end

وقتی مقدار k برابر ۱ باشد، سطر شماره صفر از ماتریس C طلب شده است در حالی که در متلب اندیس ماتریس ها و بردار ها ۱ شمار است.
سلام از پاسخ شما ممنون...
در برنامه فوق وقتیk=1است در واقع ماسطر۱از ماتریسkتشکیل میدهیم که سطر اول ماتریس k برابر است با درایه های G .
در برنامه فوق هرگز سطر صفر به وجو نخواهد آمد.

(۱۱ فروردین ۱۳۹۳ ۰۲:۲۶ ب.ظ)blackhalo1989 نوشته شده توسط:  احتمالا از دید متلب با دقت خوبی C'*C منفرده.
سلام
بابت پاسخ به سوال من متشکرم.
با دقت خوبی منفرده یعنی چی؟

(۱۱ فروردین ۱۳۹۳ ۰۱:۵۶ ب.ظ)Morris نوشته شده توسط:  لطفا کد ها را در تگ مربوطه قرار دهید.

کد:
G1=input('G1')
G2=input(G2)
for k=1:n
   C(2*k-1,:)=[G1(1,k),G2(1,k),1,0,0,0];
   C(2*k,:)=[0,0,0,G1(1,k),G2(1,k),1];
end
for h=1:n
   E(2*h-1,:)=[G1(2,h)];
   E(2*h,:)=[G2(2,h)];
end
D=inv(C'*C)*C'*E

nدر برنامه فوق:

[m,n]=size(G1)
و ماتریس های Gدارای ۲ سطر و تعداد دلخواه ستون است.
این هشدار را زمانی میدهد که از inv استفاده کنیم.
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
ارسال:
۱۲ فروردین ۱۳۹۳, ۰۳:۳۵ ب.ظ
RE: خطا در نرم افزار متلب
سلام. میبخشید وسط بحث تون وارد شدم،نخواستم تاپیک جدا ایجاد کنم.
این خطا برای چیه؟


فایل‌(های) پیوست شده


همه در حسرت یک پروازند؛
من به پرواز نمی اندیشم؛
به تو می اندیشم؛
تو که زیباتر از اندیشه یک پروازی..
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
ارسال:
۱۲ فروردین ۱۳۹۳, ۰۴:۰۸ ب.ظ (آخرین ویرایش در این ارسال: ۱۲ فروردین ۱۳۹۳ ۰۴:۰۸ ب.ظ، توسط ag13.)
RE: خطا در نرم افزار متلب
(۱۲ فروردین ۱۳۹۳ ۰۳:۳۵ ب.ظ)diligent نوشته شده توسط:  سلام. میبخشید وسط بحث تون وارد شدم،نخواستم تاپیک جدا ایجاد کنم.
این خطا برای چیه؟
این خطا برای کدوم قسمت از برنامه است؟
فکر کنم مفهومش اینه که بهتره این زسم به عنوان ی تابع اجرا بشه.
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
ارسال:
۱۲ فروردین ۱۳۹۳, ۰۵:۰۱ ب.ظ (آخرین ویرایش در این ارسال: ۱۲ فروردین ۱۳۹۳ ۰۵:۱۹ ب.ظ، توسط diligent.)
RE: خطا در نرم افزار متلب
مال هیچ قسمتی از برنامه نیست؛من داشتم امتحان میکردم ببینم چه جوری میشه توی متلب یه نمودار ترسیم کرد و این اعداد رو بهش دادم.
چیکار باید بکنم؟؟Huh

فهمیدم چرا اینجوریه.
فایل m فایلم رو به اسم plot ذخیره کرده بودم، نام فایل رو عوض کردم درست شد. :-)

همه در حسرت یک پروازند؛
من به پرواز نمی اندیشم؛
به تو می اندیشم؛
تو که زیباتر از اندیشه یک پروازی..
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
ارسال:
۱۲ فروردین ۱۳۹۳, ۰۵:۲۱ ب.ظ (آخرین ویرایش در این ارسال: ۱۲ فروردین ۱۳۹۳ ۰۵:۴۲ ب.ظ، توسط Morris.)
RE: خطا در نرم افزار متلب
(۱۲ فروردین ۱۳۹۳ ۱۲:۴۳ ب.ظ)ag13 نوشته شده توسط:  سلام از پاسخ شما ممنون...
در برنامه فوق وقتیk=1است در واقع ماسطر۱از ماتریسkتشکیل میدهیم که سطر اول ماتریس k برابر است با درایه های G .
در برنامه فوق هرگز سطر صفر به وجو نخواهد آمد.



بله حق با شماست.
من اشتباه برداشت کردم.

احتمالا برنامه شما به شکل زیر اجرا شده است که با چنین پیغامی برخورد کرده اید.
این پیغام توسط متد inv ایجاد شده است و معنی آن این است که دترمینان ماتریسی که معکوس آن مطلوب است، برابر صفر شده است و بنابراین معکوس ندارد.
کد:
n = 9;
G1= ones(2,n)
G2= ones(2,n)
for k=1:n
   C(2*k-1,:)=[G1(1,k),G2(1,k),1,0,0,0];
   C(2*k,:)=[0,0,0,G1(1,k),G2(1,k),1];
end
for h=1:n
   E(2*h-1,:)=[G1(2,h)];
   E(2*h,:)=[G2(2,h)];
end
D=inv(C'*C)*C'*E
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
ارسال: #۱۰
۱۲ فروردین ۱۳۹۳, ۰۶:۴۴ ب.ظ
خطا در نرم افزار متلب
کدتون رو تغییر بدید تا نشون بده دترمینان C'*C رو.
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
ارسال: #۱۱
۱۳ فروردین ۱۳۹۳, ۰۹:۵۸ ب.ظ (آخرین ویرایش در این ارسال: ۱۳ فروردین ۱۳۹۳ ۱۰:۳۶ ب.ظ، توسط ag13.)
RE: خطا در نرم افزار متلب
(۱۲ فروردین ۱۳۹۳ ۰۵:۲۱ ب.ظ)Morris نوشته شده توسط:  
(12 فروردین ۱۳۹۳ ۱۲:۴۳ ب.ظ)ag13 نوشته شده توسط:  سلام از پاسخ شما ممنون...
در برنامه فوق وقتیk=1است در واقع ماسطر۱از ماتریسkتشکیل میدهیم که سطر اول ماتریس k برابر است با درایه های G .
در برنامه فوق هرگز سطر صفر به وجو نخواهد آمد.



بله حق با شماست.
من اشتباه برداشت کردم.

احتمالا برنامه شما به شکل زیر اجرا شده است که با چنین پیغامی برخورد کرده اید.
این پیغام توسط متد inv ایجاد شده است و معنی آن این است که دترمینان ماتریسی که معکوس آن مطلوب است، برابر صفر شده است و بنابراین معکوس ندارد.
کد:
n = 9;
G1= ones(2,n)
G2= ones(2,n)
for k=1:n
   C(2*k-1,:)=[G1(1,k),G2(1,k),1,0,0,0];
   C(2*k,:)=[0,0,0,G1(1,k),G2(1,k),1];
end
for h=1:n
   E(2*h-1,:)=[G1(2,h)];
   E(2*h,:)=[G2(2,h)];
end
D=inv(C'*C)*C'*E
خیلی ممنون از راهنماییتون
در مورد دیگر ماتریس ها بدون این هشدار عمل میکند.کد مذکور نیز در متلب پاسخی برابر ۲ دارد.

(۱۲ فروردین ۱۳۹۳ ۰۵:۰۱ ب.ظ)diligent نوشته شده توسط:  مال هیچ قسمتی از برنامه نیست؛من داشتم امتحان میکردم ببینم چه جوری میشه توی متلب یه نمودار ترسیم کرد و این اعداد رو بهش دادم.
چیکار باید بکنم؟؟Huh

فهمیدم چرا اینجوریه.
فایل m فایلم رو به اسم plot ذخیره کرده بودم، نام فایل رو عوض کردم درست شد. :-)
Smile

(۱۲ فروردین ۱۳۹۳ ۰۶:۴۴ ب.ظ)blackhalo1989 نوشته شده توسط:  کدتون رو تغییر بدید تا نشون بده دترمینان C'*C رو.
این برنامه به طور کامل اجرا می شود فقط این هشدار را در زمان inv گرفتن میدهد که به دلیل ماتریس های ورودی بود.
ممنون بابت راهنمایی هاتون.
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ
 سپاس‌گزاری شده توسط: Morris , diligent
ارسال: #۱۲
۱۵ فروردین ۱۳۹۳, ۱۱:۲۷ ب.ظ (آخرین ویرایش در این ارسال: ۱۵ فروردین ۱۳۹۳ ۱۱:۲۹ ب.ظ، توسط Morris.)
RE: خطا در نرم افزار متلب
سلام دوست عزیز. لطفا سوال خود را در موضوعی جدید مطرح کنید. هر موضوع، یک سوال!!!
۰
۰
یافتن تمامی ارسال‌های این کاربر
نقل قول این ارسال در یک پاسخ


موضوع‌های مرتبط با این موضوع...
موضوع: نویسنده پاسخ: بازدید: آخرین ارسال
  علوم کامپیوتر شریف یا نرم افزار تهران؟ ۴L1R3Z4 ۴۴ ۳۲,۷۰۵ ۰۶ شهریور ۱۴۰۲ ۰۸:۱۲ ب.ظ
آخرین ارسال: moeinbahari
  جزوه خلاصه نکات مهم فصول ابتدایی درس مهندسی نرم افزار Happiness.72 ۱ ۳,۸۳۰ ۱۳ خرداد ۱۴۰۱ ۰۶:۲۸ ب.ظ
آخرین ارسال: M o h m m @ d
  مهندسی نرم افزار rh1995 ۰ ۱,۶۰۵ ۱۰ بهمن ۱۴۰۰ ۰۷:۰۹ ب.ظ
آخرین ارسال: rh1995
  مهندسی نرم افزار rh1995 ۰ ۱,۴۰۴ ۱۰ بهمن ۱۴۰۰ ۰۷:۰۸ ب.ظ
آخرین ارسال: rh1995
  آزمون دکتری نرم افزار و الگوریتم ۱۴۰۰ Seyyedab ۴۶ ۲۲,۱۴۵ ۰۹ مهر ۱۴۰۰ ۰۵:۳۷ ب.ظ
آخرین ارسال: Seyyedab
  فیلم های مهندسی نرم افزار خلیلی فر osouly ۰ ۲,۱۵۹ ۰۶ اردیبهشت ۱۴۰۰ ۰۴:۴۴ ب.ظ
آخرین ارسال: osouly
  کارنامه نهایی ازمون دکتری داخل سال ۱۳۹۲-گرایش نرم افزار انرژی مثبت ۶ ۱۰,۰۴۸ ۱۷ بهمن ۱۳۹۹ ۰۲:۲۷ ق.ظ
آخرین ارسال: hmaryam567
Heart نرم افزار رها بختیاری ۰ ۳,۲۷۵ ۰۵ بهمن ۱۳۹۹ ۰۲:۵۱ ب.ظ
آخرین ارسال: رها بختیاری
  چگونه این خطا را موقع اجرای sql server 2014 رفع کنم ؟ farahnaz ۲ ۳,۰۵۰ ۱۹ مهر ۱۳۹۹ ۰۲:۱۸ ق.ظ
آخرین ارسال: farahnaz
  متن به هم ریخته در نرم افزار Notepad HAMID3F ۱۵ ۲۲,۹۹۶ ۱۷ شهریور ۱۳۹۹ ۰۸:۲۶ ق.ظ
آخرین ارسال: rezasedghi100

پرش به انجمن:

Can I see some ID?

به خاطر سپاری رمز Cancel

Feeling left out?


نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close

رمزت رو فراموش کردی؟

Feeling left out?


نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. close