Пожалуйста, 09/11/2014 11:13:02 PM, Dmitrii Kashin: > Николай, раз уж такое дело, можно работающий вариант попросить патчем? > =)
diff -Naur master/Makefile master-tr/Makefile --- master/Makefile 2014-09-11 13:42:39.000000000 +0400 +++ master-tr/Makefile 2014-09-12 08:36:47.985330799 +0400 @@ -1,5 +1,5 @@ CXX=g++ -CFLAGS=-Wall -g -ggdb +CFLAGS=-Wall -g -ggdb -O2 LDFLAGS=-lm SOURCES=main.cxx variables.cxx cell.cxx grid.cxx solver.cxx timestep_constant.cxx march.cxx STASH=grid-init.o diff -Naur master/march.cxx master-tr/march.cxx --- master/march.cxx 2014-09-11 13:42:39.000000000 +0400 +++ master-tr/march.cxx 2014-09-11 15:16:50.204903767 +0400 @@ -4,8 +4,8 @@ #include "solver.h" #include "march-config.h" -void -march (Grid1D grid) +int +march (const Grid1D & grid) { int finFlag = 0; int printFlag = 0; @@ -59,12 +59,19 @@ printGridToFile(grid); + static Grid1D newgrid; + // Ñаг if (!finFlag) { printf("Making iteration %06d; Passed time: %f\n", grid.iter+1, grid.time); - Grid1D newgrid = make_step(grid, tau); - march(newgrid); - }; + newgrid = make_step(grid, tau); + return march(newgrid); + } + else + { + return 0; + } + } diff -Naur master/march.h master-tr/march.h --- master/march.h 2014-09-11 13:42:39.000000000 +0400 +++ master-tr/march.h 2014-09-11 15:00:18.642406733 +0400 @@ -3,6 +3,6 @@ #ifndef MARCH #define MARCH -void march (Grid1D grid); +int march (const Grid1D & grid); #endif //MARCH