Advects the flow fields depending upon which fields are active in the model in a column. 
  472     type(model_state_type), 
target, 
intent(inout) :: current_state
 
  473     integer, 
intent(in) ::  current_x_index, current_y_index
 
  477     do k=2,current_state%local_grid%size(z_index)-1
 
  479       current_state%su%data(k, current_y_index, current_x_index)=&
 
  480            current_state%global_grid%configuration%horizontal%tcx*(current_state%u%data(k, current_y_index, current_x_index-1)*&
 
  481            (current_state%u%data(k, current_y_index, current_x_index)+&
 
  482            current_state%u%data(k, current_y_index, current_x_index-1))-&
 
  483            current_state%u%data(k, current_y_index, current_x_index+1)*&
 
  484            (current_state%u%data(k, current_y_index, current_x_index)+&
 
  485            current_state%u%data(k, current_y_index, current_x_index+1)))
 
  487       current_state%su%data(k, current_y_index, current_x_index)=current_state%su%data(k, current_y_index, current_x_index)+&
 
  488            current_state%global_grid%configuration%horizontal%tcy*(current_state%u%data(k, current_y_index-1, current_x_index)*&
 
  489            (current_state%v%data(k, current_y_index-1, current_x_index)+&
 
  490            current_state%v%data(k, current_y_index-1, current_x_index+1))-&
 
  491            current_state%u%data(k, current_y_index+1, current_x_index)*&
 
  492            (current_state%v%data(k, current_y_index, current_x_index)+&
 
  493            current_state%v%data(k, current_y_index, current_x_index+1)))
 
  496       current_state%su%data(k, current_y_index, current_x_index)=current_state%su%data(k, current_y_index, current_x_index)+&
 
  497            (current_state%global_grid%configuration%vertical%tzc1(k)*current_state%u%data(k-1, current_y_index, current_x_index)*&
 
  498            (current_state%w%data(k-1, current_y_index, current_x_index)+&
 
  499            current_state%w%data(k-1, current_y_index, current_x_index+1))-&
 
  500            current_state%global_grid%configuration%vertical%tzc2(k)*current_state%u%data(k+1, current_y_index, current_x_index)*&
 
  501            (current_state%w%data(k, current_y_index, current_x_index)+&
 
  502            current_state%w%data(k, current_y_index, current_x_index+1)))
 
  507       current_state%sv%data(k, current_y_index, current_x_index)=current_state%global_grid%configuration%horizontal%tcy*(&
 
  508            current_state%v%data(k, current_y_index-1, current_x_index)*&
 
  509            (current_state%v%data(k, current_y_index, current_x_index)+&
 
  510            current_state%v%data(k, current_y_index-1, current_x_index))-&
 
  511            current_state%v%data(k, current_y_index+1, current_x_index)*&
 
  512            (current_state%v%data(k, current_y_index, current_x_index)+&
 
  513            current_state%v%data(k, current_y_index+1, current_x_index)))
 
  515       current_state%sv%data(k, current_y_index, current_x_index)=current_state%sv%data(k, current_y_index, current_x_index)+&
 
  516            current_state%global_grid%configuration%horizontal%tcx*(current_state%v%data(k, current_y_index, current_x_index-1)*&
 
  517            (current_state%u%data(k, current_y_index, current_x_index-1)+&
 
  518            current_state%u%data(k, current_y_index+1, current_x_index-1))-&
 
  519            current_state%v%data(k, current_y_index, current_x_index+1)*&
 
  520            (current_state%u%data(k, current_y_index, current_x_index)+&
 
  521            current_state%u%data(k, current_y_index+1, current_x_index)))
 
  524       current_state%sv%data(k, current_y_index, current_x_index)=current_state%sv%data(k, current_y_index, current_x_index)+&
 
  525            (current_state%global_grid%configuration%vertical%tzc1(k)*current_state%v%data(k-1, current_y_index, current_x_index)*&
 
  526            (current_state%w%data(k-1, current_y_index, current_x_index)+&
 
  527            current_state%w%data(k-1, current_y_index+1, current_x_index))-&
 
  528            current_state%global_grid%configuration%vertical%tzc2(k)*current_state%v%data(k+1, current_y_index, current_x_index)*&
 
  529            (current_state%w%data(k, current_y_index, current_x_index)+&
 
  530            current_state%w%data(k, current_y_index+1, current_x_index)))
 
  535       current_state%sw%data(k, current_y_index, current_x_index)=(current_state%global_grid%configuration%vertical%tzd1(k)*&
 
  536            current_state%w%data(k-1, current_y_index, current_x_index)*&
 
  537            (current_state%w%data(k, current_y_index, current_x_index)+&
 
  538            current_state%w%data(k-1, current_y_index, current_x_index))-&
 
  539            current_state%global_grid%configuration%vertical%tzd2(k)*current_state%w%data(k+1, current_y_index, current_x_index)*&
 
  540            (current_state%w%data(k, current_y_index, current_x_index)+&
 
  541            current_state%w%data(k+1, current_y_index, current_x_index)))
 
  543       current_state%sw%data(k, current_y_index, current_x_index)=current_state%sw%data(k, current_y_index, current_x_index)+&
 
  544            current_state%global_grid%configuration%horizontal%tcx*(current_state%w%data(k, current_y_index, current_x_index-1)*&
 
  545            (current_state%u%data(k, current_y_index, current_x_index-1)+&
 
  546            current_state%u%data(k+1, current_y_index, current_x_index-1))-&
 
  547            current_state%w%data(k, current_y_index, current_x_index+1)*&
 
  548            (current_state%u%data(k, current_y_index, current_x_index)+&
 
  549            current_state%u%data(k+1, current_y_index, current_x_index)))
 
  552       current_state%sw%data(k, current_y_index, current_x_index)=current_state%sw%data(k, current_y_index, current_x_index)+&
 
  553            current_state%global_grid%configuration%horizontal%tcy*(current_state%w%data(k, current_y_index-1, current_x_index)*&
 
  554            (current_state%v%data(k, current_y_index-1, current_x_index)+&
 
  555            current_state%v%data(k+1, current_y_index-1, current_x_index))-&
 
  556            current_state%w%data(k, current_y_index+1, current_x_index)*&
 
  557            (current_state%v%data(k, current_y_index, current_x_index)+&
 
  558            current_state%v%data(k+1, current_y_index, current_x_index)))
 
  564     k=current_state%local_grid%size(z_index)
 
  566     current_state%su%data(k, current_y_index, current_x_index)=current_state%global_grid%configuration%horizontal%tcx*&
 
  567          (current_state%u%data(k, current_y_index, current_x_index-1)*&
 
  568          (current_state%u%data(k, current_y_index, current_x_index)+&
 
  569          current_state%u%data(k, current_y_index, current_x_index-1))-&
 
  570          current_state%u%data(k, current_y_index, current_x_index+1)*&
 
  571          (current_state%u%data(k, current_y_index, current_x_index)+&
 
  572          current_state%u%data(k, current_y_index, current_x_index+1)))
 
  574     current_state%su%data(k, current_y_index, current_x_index)=current_state%su%data(k, current_y_index, current_x_index)+&
 
  575          current_state%global_grid%configuration%horizontal%tcy*(current_state%u%data(k, current_y_index-1, current_x_index)*&
 
  576          (current_state%v%data(k, current_y_index-1, current_x_index)+&
 
  577          current_state%v%data(k, current_y_index-1, current_x_index+1))-&
 
  578          current_state%u%data(k, current_y_index+1, current_x_index)*&
 
  579          (current_state%v%data(k, current_y_index, current_x_index)+&
 
  580          current_state%v%data(k, current_y_index, current_x_index+1)))
 
  583     current_state%su%data(k, current_y_index, current_x_index)=current_state%su%data(k, current_y_index, current_x_index)+&
 
  584          current_state%global_grid%configuration%vertical%tzc1(k)*current_state%u%data(k-1, current_y_index, current_x_index)*&
 
  585          (current_state%w%data(k-1, current_y_index, current_x_index)+&
 
  586          current_state%w%data(k-1, current_y_index, current_x_index+1))
 
  591     current_state%sv%data(k, current_y_index, current_x_index)=current_state%global_grid%configuration%horizontal%tcy*&
 
  592          (current_state%v%data(k, current_y_index-1, current_x_index)*&
 
  593          (current_state%v%data(k, current_y_index, current_x_index)+&
 
  594          current_state%v%data(k, current_y_index-1, current_x_index))-&
 
  595          current_state%v%data(k, current_y_index+1, current_x_index)*&
 
  596          (current_state%v%data(k, current_y_index, current_x_index)+&
 
  597          current_state%v%data(k, current_y_index+1, current_x_index)))
 
  599     current_state%sv%data(k, current_y_index, current_x_index)=current_state%sv%data(k, current_y_index, current_x_index)+&
 
  600          current_state%global_grid%configuration%horizontal%tcx*(current_state%v%data(k, current_y_index, current_x_index-1)*&
 
  601          (current_state%u%data(k, current_y_index, current_x_index-1)+&
 
  602          current_state%u%data(k, current_y_index+1, current_x_index-1))-&
 
  603          current_state%v%data(k, current_y_index, current_x_index+1)*&
 
  604          (current_state%u%data(k, current_y_index, current_x_index)+&
 
  605          current_state%u%data(k, current_y_index+1, current_x_index)))
 
  608     current_state%sv%data(k, current_y_index, current_x_index)=current_state%sv%data(k, current_y_index, current_x_index)+&
 
  609          current_state%global_grid%configuration%vertical%tzc1(k)*current_state%v%data(k-1, current_y_index, current_x_index)*&
 
  610          (current_state%w%data(k-1, current_y_index, current_x_index)+&
 
  611          current_state%w%data(k-1, current_y_index+1, current_x_index))