Obecne vytahy 1

   > with(plots);

   > VstupniPoplatek:=.01*CilovaCastka;

   SP:=x->min(3000,0.15*x);

   xi:=0.02;

   

   

   

   

   >

   Obecne vztahy a pojmy

   > StavNaKonciRoku(Datum(Pocatek)[3]-1):=VstupniPoplatek*

   (1+xi)^((CisloDne(

   Datum(Pocatek)[1],Datum(Pocatek)[2],

   Datum(Pocatek)[3]-1)-Pocatek)/365.25)

   >

   Warning, premature end of input

   

   > Pol:=proc() # pomocna procedura vraci x[j], pokud je x pole a x pokud je to jedno cislo

   if nargs<=2 then

    args[1]

   else args[args[nargs]]

   fi

   end;

   

   StavNaKonciRoku:=t->

   `if`(t`if`(tSP(NasporenaCastka(t));

   

   

   StavEkv:=tau->

   add(

     `if`(Datum(UlozkyEkv[i][2])[3]>tau,

          0,

          UlozkyEkv[i][1])

   *(1+'zeta')^((CisloDne(31,12,tau)-Pol(UlozkyEkv[i][2]))/DelkaRoku(t)),

   i=1..nops(UlozkyEkv));

   

   

   Data a vypocty

   > Pocatek:=CisloDne(1,11,2006);

   CilovaCastka:=300000;

   

   > A:=NULL;

   

   for z from 1000 by 2000 to 22000 do

   Ulozky:='Ulozky';NULL;

   for t from 2005 to  2020 do

   x:=0.;

   Ulozky[t]:=[x,CisloDne(31,1,t)]

   od;

   Ulozky[Datum(Pocatek)[3]]:=[VstupniPoplatek,Pocatek];

   for t from 2006 to  2006+6 do

   x:=z;

   Ulozky[t]:=Ulozky[t],[x,CisloDne(20,1,t)]

   od;

   

   UlozkyEkv:=convert(Ulozky,list);

   

   CilovaCastka:=StavNaKonciRoku(2012);

   VstupniPoplatek:=.01*CilovaCastka;

   

   rce:=StavNaKonciRoku(2012)=StavEkv(2012);

   A:=A,[x,fsolve(rce)];

   od:

   > nops([A]);

   > pointplot([A],title="Vynosnost v zavislosti na velikosti ulozek" #,style=line

   );

   > B:=NULL;

   

   for z from 1000 by 500 to 22000 do

   Ulozky:='Ulozky';NULL;

   for t from 2005 to  2020 do

   x:=PoplatekZaVedeni;

   Ulozky[t]:=[x,CisloDne(31,1,t)]

   od;

   Ulozky[Datum(Pocatek)[3]]:=[VstupniPoplatek,Pocatek];

   for t from 2009 to  2006+6 do

   x:=z;

   Ulozky[t]:=Ulozky[t],[x,CisloDne(20,1,t)]

   od:

   

   UlozkyEkv:=convert(Ulozky,list):

   

   CilovaCastka:=StavNaKonciRoku(2012);

   VstupniPoplatek:=.01*CilovaCastka:

   

   rce:=StavNaKonciRoku(2012)=StavEkv(2012):

   B:=B,[x,fsolve(rce)];

   od:

   > pointplot([B], title="Vynosnost v zavislotsti na velikost ulozek (pri kratsi dobe
   sporeni)"#,style=line

   );

   > C:=NULL;

   for K from 2006 to 2011 do

   #for z from 1000 by 500 to 22000 do

   z:=19000;

   Ulozky:='Ulozky';NULL;

   for t from 2005 to  2020 do

   x:=PoplatekZaVedeni;

   Ulozky[t]:=[x,CisloDne(31,1,t)]

   od;

   Ulozky[Datum(Pocatek)[3]]:=[VstupniPoplatek,Pocatek];

   for t from K to  2006+6 do

   x:=z;

   Ulozky[t]:=Ulozky[t],[x,CisloDne(20,1,t)]

   od:

   

   UlozkyEkv:=convert(Ulozky,list):

   

   CilovaCastka:=StavNaKonciRoku(2012);

   VstupniPoplatek:=.01*CilovaCastka:

   

   rce:=StavNaKonciRoku(2012)=StavEkv(2012):

   C:=C,[2012-K,fsolve(rce)];

   od:

   > pointplot([C], title="Vynosnost v zavislosti na delce sporeni");

   > E:=NULL;

   for K from 2010 to 2015 do

   #for z from 1000 by 500 to 22000 do

   z:=19000;

   Ulozky:='Ulozky';NULL;

   for t from 2005 to  2020 do

   x:=PoplatekZaVedeni;

   Ulozky[t]:=[x,CisloDne(31,1,t)]

   od;

   Ulozky[Datum(Pocatek)[3]]:=[VstupniPoplatek,Pocatek];

   for t from 2006 to  K do

   x:=z;

   Ulozky[t]:=Ulozky[t],[x,CisloDne(20,1,t)]

   od:

   

   UlozkyEkv:=convert(Ulozky,list):

   

   CilovaCastka:=StavNaKonciRoku(2012);

   VstupniPoplatek:=.01*CilovaCastka:

   

   rce:=StavNaKonciRoku(K)=StavEkv(K):

   E:=E,[K-2005,fsolve(rce)];

   print(E[nops([E])]);

   od:

   pointplot([E], title="Vynosnost v zavislosti na delce sporeni");

   Warning, computation interrupted

   

   > pointplot([E], title="Vynosnost v zavislosti na delce sporeni");

   >

   > NadN:=x->`if`(x>0,x,0);

   > NadN(-2);

   > X:=[0,0,0,21000,20000,18000];

   S:=1;

   delta:=1000;

   

   while delta>100 do

   

   for kappa from 0 to 0 do

   Ulozky:='Ulozky';NULL;

   for t from 2005 to  2020 do

   x:=PoplatekZaVedeni;

   Ulozky[t]:=[x,CisloDne(31,1,t)]

   od;

   # print(`....`);

   Ulozky[Datum(Pocatek)[3]]:=[VstupniPoplatek,Pocatek];

   for t from 2006 to  2011 do

   # print(t,aaaaa[kappa][t-2006+1]);

   x:=X[t-2006+1];

   Ulozky[t]:=Ulozky[t],[x,CisloDne(20,1,t)]

   od:

   

   UlozkyEkv:=convert(Ulozky,list):

   

   CilovaCastka:=StavNaKonciRoku(2011);

   VstupniPoplatek:=.01*CilovaCastka:

   

   rce:=StavNaKonciRoku(2011)=StavEkv(2011):

   Z[kappa]:=fsolve(rce);

   od;

   

   ZZ:=Z[kappa]; #=Z[0]

   

   

   

   

   >

   > print(Z[0],X);

   for kappa from 0 to 6 do

   Ulozky:='Ulozky';NULL;

   for t from 2005 to  2020 do

   x:=PoplatekZaVedeni;

   Ulozky[t]:=[x,CisloDne(31,1,t)]

   od;

   # print(`....`);

   Ulozky[Datum(Pocatek)[3]]:=[VstupniPoplatek,Pocatek];

     XX[kappa]:=[seq(NadN(X[j]-`if`(kappa=j,delta,0)),j=1..6)];# zaporne ulozky zak.

   #   print(XX[kappa]);

     for t from 2006 to  2011 do

       x:=XX[kappa][t-2006+1];

       Ulozky[t]:=Ulozky[t],[x,CisloDne(20,1,t)]

     od:

   

   UlozkyEkv:=convert(Ulozky,list):

   

   CilovaCastka:=StavNaKonciRoku(2011);

   VstupniPoplatek:=.01*CilovaCastka:

   

   rce:=StavNaKonciRoku(2011)=StavEkv(2011):

   Z[kappa]:=fsolve(rce);

     # print(Z[kappa]);

   if Z[kappa]Z[0] then

   X:=XX[kappa];

   fi;

   

   

   od:

   >

   >

   > delta:=delta-round(100/1.5);

   

   od:

   

   

   > .4957438236e-1, [20000, 20000, 20000, 20000, 20000, 20000]

   .5202445659e-1, [12226, 12226, 12226, 18067, 18067, 12422]

   ---

   .5294023996e-1, [20, 200, 2000, 20000, 20000, 20000]

   .5505762024e-1, [0, 0, 2000, 19000, 19000, 13876]

   . . .

   .5493548982e-1, [0, 0, 2000, 19000, 19000, 13876]

   ??

   >

   

   >

   

   >

   

   > permute(6)[k];

   > PermutaceSOpakovanim:=a->permute((op(choose(a,a))));

   

   >

   > i:=2;j:=4;

   A:=permute(i);

   

   > B:=permute(A);

   > permute((op(choose(3,3))));

   > PermutaceSOpakovanim(3);

   >