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))