Azzera filtri
Azzera filtri

Cumulative sum doesn't work.

1 visualizzazione (ultimi 30 giorni)
Carmela Marie Lingad
Carmela Marie Lingad il 24 Mag 2021
Commentato: Rik il 9 Giu 2021
Hi. I uploaded my code and the excel file. I have a concern.
I want to compute for parameter YB1. To compute for the YB1, it should be the product of the corresponding Wt1 and (Db1 - Da1). But there is a condition. The computation of YB1 should start in the value where Da1 = Df1 and should end where Db1 = Df1 + B1. So based on the excel file,
Df1 = 3m, B1 = 1.2m
Since cell B9 is equals to (Df1 = 3m) and cell C10 is equals to (Df1 + B1 = 3m + 1.2m = 4.2m).
Therefore, YB1 = cell E9(cell C9 - cell B9) + cellE10(cell C10 - cell B10).
YB1 = 9(4-3) + 9.133333(4.2 - 4)
So the condition should be this, the cumulative sum of the product of Wt1 and (Db1 - Da1) should start where Da1 = Df1 and should end where Db1 = Df1 + B1.
Then the return value should be the sum of YB1. And it should be written consistently from cell G5 to cell G35. The cumulative sum will be written from cell G5:G35.
I hope someone can help me.
  4 Commenti
Carmela Marie Lingad
Carmela Marie Lingad il 9 Giu 2021
Hi. I would like to follow up this question. I still can't figure out the code.
Rik
Rik il 9 Giu 2021
How doesn't the code David posted work for you?

Accedi per commentare.

Risposta accettata

David Hill
David Hill il 24 Mag 2021
Modificato: David Hill il 24 Mag 2021
t=readmatrix('Terzaghi2.xlsx');%load matrix and look where everything is at
a=t(2,7);
b=t(1,7)+a;
idx1=find(t(:,2)==a);
idx2=find(t(:,3)==b);
Yb=cumsum(t(idx1:idx2,5).*(t(idx1:idx2,3)-t(idx1:idx2,2)));

Più risposte (0)

Categorie

Scopri di più su Data Import from MATLAB in Help Center e File Exchange

Prodotti


Release

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by