اطلاعیه

Collapse
No announcement yet.

تعریف سیگمای ضرب دو ماتریس در mfile متلب

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    تعریف سیگمای ضرب دو ماتریس در mfile متلب

    با سلام خدمت دوستان گرامی
    من می خواستم سیگمای ضرب دو ماتریس در mfileمتلب تعریف کنم.
    مثلا سیگما (Kbi*Vi) به طوری که i=1 ,i=3باشه!
    کسی می تونه در این زمینه کمکم کنه؟

    با تشکر

    #2
    پاسخ : تعریف سیگمای ضرب دو ماتریس در mfile متلب

    اگه منظورتون i از 1 تا 3 هست:

    میتونید با یه for بنویسید

    s=0;
    for i=1:3
    s=s+kb(i)*v(i);
    end
    It's nice to be important but it's important to be nice!

    از اینکه نمی رسم جواب دوستان را بدم معذرت می خوام.

    دیدگاه


      #3
      پاسخ : تعریف سیگمای ضرب دو ماتریس در mfile متلب

      با عرض سلام و خسته نباشید خدمت شما
      ضمن تشکر از پاسخی که فرمودید خدمتتون عرض کنم که بنده قبلا این راه امتحان کردم ولی متاسفانه جواب نگرفتم! :sad:
      نمی دونم علتش چیه؟ چون ماتریس هائی که باید در این سیگما استفاده کنم پارامتری هستش! اول اومدم با استفاده از تعریف متغیرهای سیمبولیک (syms) آرایه های پارامتری دو ماتریس رو تعریف کردم! نمی دونم!شاید اشتاباهم همین قسمت بوده!اما راه دیگه ای برای تعریف کردن پارامترهای ماتریس ها به ذهنم نرسید! :sad:
      اگر اسم ماتریس رو kb(i) در نظر بگیرم error میده! اگر هم اسم ماتریس رو kbi در نظر بگیرم! جواب میده! ولی نه اون جوابی که مورد نظره!!

      >> syms i kb11 kb12 kb21 kb22 v11 v12 v21 v22
      >> kb(i)=[kbi11 kbi12;kbi21 kbi22]
      ??? Error using ==> subsindex
      Function 'subsindex' is not defined for values of class 'sym'.


      right][/right]>>[ kbi=[kbi11 kbi12;kbi21 kbi22]
      right][/right]>> [vi=[v11 v12;v21 v22]
      >> s=0

      >> for i=1:3
      s=s+kbi*vi
      end

      s =

      [ kbi11*v11+kbi12*v21, kbi11*v12+kbi12*v22]
      [ kbi21*v11+kbi22*v21, kbi21*v12+kbi22*v22]



      s =

      [ 2*kbi11*v11+2*kbi12*v21, 2*kbi11*v12+2*kbi12*v22]
      [ 2*kbi21*v11+2*kbi22*v21, 2*kbi21*v12+2*kbi22*v22]



      s =

      [ 3*kbi11*v11+3*kbi12*v21, 3*kbi11*v12+3*kbi12*v22]
      [ 3*kbi21*v11+3*kbi22*v21, 3*kbi21*v12+3*kbi22*v22]













      دیدگاه


        #4
        پاسخ : تعریف سیگمای ضرب دو ماتریس در mfile متلب

        سلام
        منظورتون از سیگمای ضرب دو ماتریس چیه؟
        ضرب ماتریسی منظورتونه یا ضرب عضو به عضو(اگر ضرب عضو به عضو منظورتونه به جای * باید از *. استفاده کنید)
        منظورتون از سیگما چیه؟ آیا یعنی تمام اعضای ماتریس حاصل از ضرب با هم جمع بشن و در نهایت یک عدد به شما بده؟ اگر اینطور باشه ...
        کد:
        clc
        syms i kb11 kb12 kb21 kb22 v11 v12 v21 v22
        kb = [kb11 kb12;kb21 kb22];
        v = [v11 v12;v21 v22];
        s = sum(sum(kb.*v))
        که نتیجه میده:
        کد:
        s =
        kb11*v11+kb21*v21+kb12*v12+kb22*v22

        دیدگاه


          #5
          پاسخ : تعریف سیگمای ضرب دو ماتریس در mfile متلب

          با عرض سلام وخسته نباشید خدمت شما
          از پاسخی که فرمودید سپاسگزارم.
          خدمتتون عرض کنم که منظورم موردی که شما بهش اشاره کردید نیست.جواب نهائی باید یه ماتریس بشه!


          Kbi*Vi ∑
          به گونه ای که i=1 تا i=2 باشه!
          وماتریس های Kbi و Vi به ترتیب به صورت زیر باشند:

          Kbi=[Kbi11 Kbi12;Kbi21 Kbi22][left][/left

          Vi=[vi11 vi12;vi21 vi22]
          به عبارت دیگه یه دفعه عمل Kb1*V1 انجام بده و دفعه بعد Kb2*V2 انجام بده و سپس حاصل جمع این دو را به صورت ماتریس بهمون بده!
          با تشکر

          دیدگاه

          لطفا صبر کنید...
          X