Clear Filters
Clear Filters

Element-By-Element Operations using Matlab

4 views (last 30 days)
I wonder how to calculate the following sum using Element-By-Element Operations Matlab:
∑_(i=1)^4(u_i.[min(0,A_i.x-b_i )]^2)
i=1:4
u_i is a scalar
A_i is a (1,4) vector
b_i is a scalar
and
x is a (4,1) vector

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 25 Nov 2013
Edited: Andrei Bobrov on 25 Nov 2013
u*min(0,A*x-b).^2;
  3 Comments
imed NASRI
imed NASRI on 25 Nov 2013
Edited: imed NASRI on 25 Nov 2013
I want to calculate automatically this sum:
u(1)*[min(0,A(1,:)*x-b(1))]^2+u(2)*[min(0,A(2,:)*x-b(2))]^2+u(3)*[min(0,A(3,:)*x-b(3))]^2+u(4)*[min(0,A(4,:)*x-b(4))]^2

Sign in to comment.

More Answers (1)

Biswajit M
Biswajit M on 25 Nov 2013
hope this helps:
u(1)*(min(0,min(A(1,:)))*x-b(1)) .^2+u(2)*(min(0,min(A(2,:)))*x-b(2)) .^2+u(3)*(min(0,min(A(3,:)))*x-b(3)) .^2+u(4)*(min(0,min(A(4,:)))*x-b(4)) .^2
I tried it this way :
clear all; clc
u=[1,2,3,4]; A=[1,2,3,4;5,6,7,8;1,2,3,4;5,6,7,8]; x=[5;6;7;8]; b=[4;5;6;7]; min(0,min(A(1,:)))
u(1)*(min(0,min(A(1,:)))*x-b(1)) .^2+u(2)*(min(0,min(A(2,:)))*x-b(2)) .^2+u(3)*(min(0,min(A(3,:)))*x-b(3)) .^2+u(4)*(min(0,min(A(4,:)))*x-b(4)) .^2
The output comes like:
ans =
370
370
370
370
  1 Comment
imed NASRI
imed NASRI on 25 Nov 2013
Edited: imed NASRI on 25 Nov 2013
My vectors have sometimes a size (1000). In this case your équation becomes so hard to write. I Wonder if i can use a loop to calculate automatically this sum??!!!

Sign in to comment.

Categories

Find more on Programming in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!