[Scilab-users] Avoiding a loop
Frieder Nikolaisen
Frieder.Nikolaisen at student.hs-rm.de
Thu May 11 09:17:42 CEST 2017
Thanks for all the answers.
I feared that there is no way around a loop. During the process batt
(Battery) is charged and discharged. In my example, it is only
discharged. I will code the entire problem with a loop, maybe somebody
knows something to speed up the process with the full problem. (Tim: I
am not a programming pro, a C-function might not be a solution. )
Why do I try avoidng a loop? I do have txt-document with 50 000 to 100
000 lines about a (hybrid-)locomotive shunting process. I do need to
optimize the energy managment. Because I am not mathemtic student, I
have to solve the problem empirical (try and error). The programm has to
run a few hundred times. With a matrix thats no problem, but with
matrixes only, I can only calculate the diesel usage without any battery
energy storage.
Thanks for the checking my code anyway.
Am 10.05.2017 um 20:53 schrieb Amanda Osvaldo:
> What it's the equation you need to compute ?
> Perhaps I can help.
>
> I think it's possible to compute with something in this way:
> map = find (P(:,2) > 100 );
> if batt > 800 then
> batt = batt - P(map,2) * (P(map+1,1) - P(map,1));
> end
> On Wed, 2017-05-10 at 17:23 +0200, Frieder Nikolaisen wrote:
>>
>> Hello,
>>
>> I did write an example code, but I do not like the time consuming way
>> I solved the problem. With 50 000 lines in the matrix, it wouldn't be
>> fun.
>>
>> How can I avoid using the for-loop?
>>
>> 10, 80;
>> 11, 200
>> 15, 0];
>>
>> batt = 1000;
>> gen = 0;
>>
>> n = 1
>> for n=1:5
>>
>> if P(n,2) > 100 then
>> if batt > 800 then batt = batt - P(n,2) * (P(n+1,1) - P(n,1))
>> else
>> gen = gen + P(n,2) * (P(n+1,1) - P(n,1))
>> end
>>
>> else
>> batt = batt - P(n,2) * (P(n+1,1) - P(n,1))
>> end
>> disp('n ' + string(n))
>> disp('batt ' + string(batt))
>> disp('gen ' + string(gen))
>> end
>>
>> Thanks alot!
>>
>> Best regards Frieder
>> _______________________________________________
>> users mailing list
>> users at lists.scilab.org <mailto:users at lists.scilab.org>
>> http://lists.scilab.org/mailman/listinfo/users
>
>
> _______________________________________________
> users mailing list
> users at lists.scilab.org
> http://lists.scilab.org/mailman/listinfo/users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.scilab.org/pipermail/users/attachments/20170511/ba78409c/attachment.htm>
More information about the users
mailing list