func int saveMeditAnim(real[int] & u, string & ime, int m)
{
// u = vektor rješenja. Ako je
// Vh uu;
// rješenje problema, onda funkciji treba predati uu[].
//
// ime je bazno ime datoteke u koju treba spremiti rješenje.
// m je redni broj datoteke. Ulazi u ime datoteke.
//
// Da bi se dobila animacija rješenja u medit-u potrebno je
// za svaki trenutak t spremiti .mesh i .bb file. Kako je .mesh
// file isti (simulacija se dešava na istoj mreži) napravit ćemo
// samo simbolički link na postojeći .mesh file koji je napravljen
// u glavnom programu i ima ime: ime+".mesh"
//
// Animacija u medit-u dobiva se npr. na sljedeći način:
// medit ime -a 1 31
// gdje je ime bazno ime svih datoteka (argument ove funkcije), a
// 1 - 31 raspon u kome se kreće indeks m.
string ime1, ime2;
// .bb datoteke moraju biti numerirane s troznamenkastim brojevima.
// Time je dozvoljena animacija od najviše 1000 slika.
if(m<10){
ime1=ime+".00"+m+".bb"; // ime .bb datoteke
ime2=ime+".00"+m+".mesh"; // ime .mesh datoteke
}
else if(m<100){
ime1=ime+".0"+m+".bb";
ime2=ime+".0"+m+".mesh";
}
else{
ime1=ime+"."+m+".bb";
ime2=ime+"."+m+".mesh";
}
ofstream file(ime1);
exec("ln -s "+ime+".mesh "+ime2); // simbolički link na .mesh datoteku
// Ispis .bb datoteke
file << "2 1 1 " << u.n<< " 2"<<endl;
for(int j=0;j<u.n;j++) file << u[j] << endl;
// Izlazom iz "bloka" zatvaraju se sve datoteke.
return 1;
}