How to sum the product between a matrix and 2 vectors

1 次查看(过去 30 天)
I need to solve a system of differential equation written as:
For each equation I should solve a summation like:
where K_Br is a matrix previously calculated and n is a vector as the solution of the differential equation system.
For example, for i=3:
I wrote the system of differential equation as:
function ndot = System_ni (t,n)
ndot = zeros(M,1);
ndot(1) = -n(1)*sum(K_Br(1,1:M)*n(1:M));
for i = 2:M
ndot(i) = 1/2*sum(K_Br(1:i-1,i-1:1)*n(i-1:1)*n(1:i-1))-n(i)*sum(K_Br(i,1:M)*n(1:M));
end
end
but summation seems not to work.
Thank you in advance for any help.
  3 个评论
Sara  Crosetto
Sara Crosetto 2020-12-18
I reported the initial equation wrong.
Actually, the equation is:
VBBV
VBBV 2024-4-8
@Sara Crosetto the terms in equation shown are dependent on another implicit summing variable i
You need two for loops instead of one for such summation to work.

请先登录,再进行评论。

回答(1 个)

Karan Singh
Karan Singh 2025-1-31
Hi Sara,
I think you are not performing the element-wise operation correctly. How about using " .* " instead of " * " for element-wise multiplication? This MATLAB answer might be of help:What does mean .* and ' ? - MATLAB Answers - MATLAB Central for you to carry out the process.

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by