Нейтрофилы
Научные материалы / Нейтрофилы
Страница 18

21. Нерсесова Л.С. Движение немышечных клеток и их компонентов., Ленинград, «Наука» 1977г.

22. Туманов Е.А. и соавт. Бюлл. Эксп. Биол. Мед. 1990, N6, 594-597.

Приложение

Текст программы математического моделирования случайного блуждания популяции нейтровилов

program neutro;

uses dos, crt, graph;

const

uparrow = #72;

leftarrow = #75;

rightarrow = #77;

downarrow = #80;

type

gr_descriptor = record

x_0,y_0 : word;

X_len,y_len : word;

X_scale, Y_scale : real;

end;

prob_mov = record

max_step : real;

cell_name : string;

step, manual : array[0 10] of real;

cent, cummulate : array[0 10] of word;

end;

scr_mod = (name_edit, arg_edit, fun_edit, diag_edit);

cell_typ = (slow, mean, fast);

par_typ = (g_shift, l_shift, angle);

scr_adr=record

x : integer;

y : integer;

end;

cell_descriptor = record

speed : cell_typ;

x, y, angle : array[1 100] of real;

end;

var

cell : array[1 30] of cell_descriptor;

step_distri : array[g_shift angle] of prob_mov;

max_shift : array[1 30] of real;

start_x, start_y, counter : integer;

graph_scale : gr_descriptor;

key : char;

N_line, N_pix_inline : integer;

graph_X, graph_Y : array[slow fast] of integer;

marker_place : array[arg_edit diag_edit, 1 11] of scr_adr;

name_place, cell_place : scr_adr;

step_len, step_ang, current_x, current_y, current_a : real;

choose_cell : cell_typ;

sign : integer;

procedure draw_axis;

var

i, j : word;

bintext : string;

begin

with graph_scale do

begin

x_0:=round(N_pix_inline/40);

y_0:=round(N_line/40);

X_len:=round(N_pix_InLine-2*x_0);

Y_len:=round(N_line-2*y_0);

setlinestyle(0,0,1);

rectangle(x_0,Y_0,x_0+X_len,Y_0+Y_len);

end;

end;

procedure opengraph;

var

grdriver, grmode : integer;

begin

detectgraph(grdriver,grmode);

initgraph(grdriver,grmode,'');

N_line:=getmaxY;

N_pix_inline:=getmaxX;

start_x:=n_pix_inline div 2;

start_y:=n_line div 2;

SetBkColor(Black);

SetColor(LightRed);

cleardevice;

draw_axis;

end;

procedure readscreen(fname : string; Tcl,Tbg : word);

var

x, y, j, txt_b, txt_c : word;

i : array [arg_edit diag_edit] of word;

a : char;

d : text;

begin

assign(d,fname);

reset(d);

txt_b:=Black;

TextBackground(txt_b);

clrscr;

y:=0;

i[arg_edit]:=0; i[fun_edit]:=0; i[diag_edit]:=0;

repeat

y:=y+1; x:=0;

repeat

x:=x+1;

read(d,a);

case a of

'.' : begin

if txt_b=Black then txt_b:=Tbg else txt_b:=Black;

txt_c:=Tcl;

textbackground(txt_b);

textcolor(txt_c);

WRITE(' ');

end;

'*' : begin

name_place.x:=x;

name_place.y:=y;

write(' ');

end;

'$' : begin

cell_place.x:=x;

cell_place.y:=y;

write(' ');

end;

'#' : begin

write(' ');

i[arg_edit]:=i[arg_edit]+1;

Страницы: 13 14 15 16 17 18 19 20 21