Is there any notation for the calculation of this sum ??

1 回表示 (過去 30 日間)
kamal kiki
kamal kiki 2012 年 10 月 8 日
I want to calculate a sum of products of the form :
1.1*a^2*b^9+1.4*a^7*b^4+0.25*a^6*b^8
where a and b are constants.
This expression is the sum of 3 products, I am giving it just for simplification, but the reality is that I have to calculate a sum of 47 products of this form and in each product the coefficients (1.1, 1.4, 0.25) are different and the powers (2, 9, 7, 4, 6, 8) are also different from one product to the other.
So, my question is : Is there any notation that I can use to calculate the sum above without having to repeat each time the constants a and b ??

採用された回答

Azzi Abdelmalek
Azzi Abdelmalek 2012 年 10 月 8 日
編集済み: Azzi Abdelmalek 2012 年 10 月 8 日
example
x=11
a=[1 2 3 4];
p=[10 15 20 25]
sum(a.*x.^p)
% the result is
a(1)*x^p(1)+a(2)*x^p(2)+...
./ and .* and .^ are operations element by element
for your case
c=[1.1 1.4 0.25 ]
p1=[2 7 6]
p2=[9 4 8]
a=10;b=30
out=sum(c.*a.^p1.*b.^p2)
you can also create a function
f1=@(c,p1,p2,a,b) sum(c.*a.^p1.*b.^p2)
then
out=f1(c,p1,p2,a,b)

その他の回答 (2 件)

kamal kiki
kamal kiki 2012 年 10 月 8 日
Thank you very much Abdelmalek for your answer.
I am still having a problem.
I have saved the M-file below under the name mytotal.m
function F = mytotal(c,p1,p2,a,b)
F = @(c,p1,p2,a,b)sum(c.*a.^p1.*b.^p2)
But when I enter in the command window the following command
mytotal([1.1 1.4 0.25 ],[2 7 6],[9 4 8],10,30) I have the following output
ans = @(c,p1,p2,a,b)sum(c.*a.^p1.*b.^p2) displayed in the command window.
Please what is wrong in my M-file ?????
  2 件のコメント
Azzi Abdelmalek
Azzi Abdelmalek 2012 年 10 月 8 日
Kamal it's not a function file. just write
f1=@(c,p1,p2,a,b) sum(c.*a.^p1.*b.^p2)
then
c=[1.1 1.4 0.25 ]
p1=[2 7 6]
p2=[9 4 8]
a=10;b=30
out=f1(c,p1,p2,a,b)
kamal kiki
kamal kiki 2012 年 10 月 9 日
Ok thank you very much Abdelmalek.

サインインしてコメントする。


Wayne King
Wayne King 2012 年 10 月 8 日
Why are you entering it like that?
mytotal = @(c,p1,p2,a,b)sum(c.*a.^p1.*b.^p2)
mytotal([1.1 1.4 0.25 ],[2 7 6],[9 4 8],10,30)

カテゴリ

Help Center および File ExchangeMATLAB についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by