diff --git a/src/VTK/post.f90 b/src/VTK/post.f90
index 0b6b2fd02935dce1a5f2790585a0f3e196ac3200..900f11a5d06e4d54d7580ef45d9c83d5a26c9a2e 100644
--- a/src/VTK/post.f90
+++ b/src/VTK/post.f90
@@ -6,8 +6,8 @@ MODULE definitions
       integer noctree,nnode,nleaves
       integer nelemr,nlsf 
       double precision,dimension(:),pointer::x,y,z
-      double precision,dimension(:),pointer::u,v,w,temp,pressure,strain
-      double precision,dimension(:),pointer::nodal_pressure
+      double precision,dimension(:),pointer::u,v,w,wpreiso,temp,pressure,strain
+      double precision,dimension(:),pointer::nodal_pressure,spressure
       double precision,dimension(:),pointer::e2d
       double precision,dimension(:),pointer::crit
       integer,dimension(:,:),pointer::icon,iconr
@@ -57,10 +57,15 @@ integer :: iunit,ilsf,nne,is,k,npcl,j,np,nl
 integer :: output_u_field
 integer :: output_v_field
 integer :: output_w_field
+integer :: output_velo_vect 
+integer :: output_preiso_velo_vect 
 integer :: output_disp_field
-integer :: output_press_field
+integer :: output_press_fieldn 
+integer :: output_press_fielde 
+integer :: output_smooth_press_fielde
 integer :: output_temp_field
-integer :: output_e2d_field
+integer :: output_e2d_fielde 
+integer :: output_e2d_fieldn 
 integer :: output_crit_field
 integer :: output_strain_field
 integer :: output_lsf_field
@@ -158,11 +163,16 @@ write(*,*) '--------------------------------------------------------------------
 open(unit=77,file='input_of_outputs.txt',status='old')
 read(77,*) output_u_field 
 read(77,*) output_v_field 
-read(77,*) output_w_field 
+read(77,*) output_w_field
+read(77,*) output_velo_vect 
+read(77,*) output_preiso_velo_vect 
 read(77,*) output_disp_field 
-read(77,*) output_press_field
+read(77,*) output_press_fieldn 
+read(77,*) output_press_fielde 
+read(77,*) output_smooth_press_fielde
 read(77,*) output_temp_field 
-read(77,*) output_e2d_field 
+read(77,*) output_e2d_fielde 
+read(77,*) output_e2d_fieldn
 read(77,*) output_crit_field 
 read(77,*) output_strain_field 
 read(77,*) output_lsf_field 
@@ -176,10 +186,15 @@ read(77,*) output_regular
 write(*,*) 'output u      field       ->',(output_u_field==1)
 write(*,*) 'output v      field       ->',(output_v_field==1)
 write(*,*) 'output w      field       ->',(output_w_field==1)
+write(*,*) 'output velo   vectors     ->',(output_velo_vect==1) 
+write(*,*) 'output preiso velo vectors->',(output_preiso_velo_vect==1) 
 write(*,*) 'output disp   field       ->',(output_disp_field==1)
-write(*,*) 'output press  field       ->',(output_press_field==1)
+write(*,*) 'output node press field   ->',(output_press_fieldn==1) 
+write(*,*) 'output raw press field    ->',(output_press_fielde==1) 
+write(*,*) 'output smooth press field ->',(output_smooth_press_fielde==1)
 write(*,*) 'output temp   field       ->',(output_temp_field==1)
-write(*,*) 'output e2d    field       ->',(output_e2d_field==1)
+write(*,*) 'output elemental e2d field->',(output_e2d_fielde==1) 
+write(*,*) 'output nodal e2d field    ->',(output_e2d_fieldn==1)
 write(*,*) 'output crit   field       ->',(output_crit_field==1)
 write(*,*) 'output strain field       ->',(output_strain_field==1)
 write(*,*) 'output lsf    field       ->',(output_lsf_field==1)
@@ -198,7 +213,7 @@ read (7) ov%noctree,ov%nnode,ov%nleaves,ner,ov%nlsf,npcl,current_time
 nn=ov%nnode
 allocate(ov%on(nn))
 allocate(ov%x(nn),ov%y(nn),ov%z(nn))
-allocate(ov%u(nn),ov%v(nn),ov%w(nn))
+allocate(ov%u(nn),ov%v(nn),ov%w(nn),ov%wpreiso(nn))
 allocate(ov%pressure(ov%nleaves),ov%strain(nn))
 allocate(ov%e2d(ov%nleaves))
 allocate(ov%whole_leaf_in_fluid(ov%nleaves))
@@ -209,7 +224,7 @@ allocate(influid(nn))
 allocate(invoid(nn))
 allocate(rtf(nn),ftr(nn),elvoid(nn))
 allocate(surface(ov%nlsf))
-allocate(ov%nodal_pressure(nn))
+allocate(ov%nodal_pressure(nn),ov%spressure(ov%nleaves))
 allocate(ov%icon(8,ov%nleaves))
 allocate(ov%octree(ov%noctree))
 
@@ -219,6 +234,7 @@ allocate(ov%octree(ov%noctree))
 
 read(7)(ov%x(i),ov%y(i),ov%z(i),   &
         ov%u(i),ov%v(i),ov%w(i),   &
+        ov%wpreiso(i),             &
         ov%lsf(i,1:ov%nlsf),       &
         ov%temp(i),                &
         ov%nodal_pressure(i),      &
@@ -230,6 +246,10 @@ read(7)(ov%x(i),ov%y(i),ov%z(i),   &
 !======================
 
 read(7) (ov%icon(1:8,ie),            &
+! Line below added by dwhipp - 12/09 
+         ov%pressure(ie),            & 
+! Line below added by dwhipp - 12/09 
+         ov%spressure(ie),           &
          ov%crit(ie),                &
          ov%e2d(ie),                 &
          ov%whole_leaf_in_fluid(ie), & 
@@ -368,7 +388,12 @@ write(*,'(a,2f30.20)') 'z                 range : ',minval(ov%z(1:nn)),      max
 write(*,'(a,2f30.20)') 'u                 range : ',minval(ov%u(1:nn)),      maxval(ov%u(1:nn))
 write(*,'(a,2f30.20)') 'v                 range : ',minval(ov%v(1:nn)),      maxval(ov%v(1:nn))
 write(*,'(a,2f30.20)') 'w                 range : ',minval(ov%w(1:nn)),      maxval(ov%w(1:nn))
-write(*,'(a,2f30.20)') 'pressure (nodes)  range : ',minval(ov%nodal_pressure), maxval(ov%nodal_pressure)
+write(*,'(a,2f30.20)') 'w (preiso)        range : ',minval(ov%wpreiso(1:nn)),maxval(ov%wpreiso(1:nn))
+! Line below added by dwhipp - 12/09 
+write(*,'(a,2f30.20)') 'pressure          range : ',minval(ov%pressure),     maxval(ov%pressure) 
+! Line below added by dwhipp - 12/09 
+write(*,'(a,2f30.20)') 'smooth pressure   range : ',minval(ov%spressure),    maxval(ov%spressure)
+write(*,'(a,2f30.20)') 'pressure (nodes)  range : ',minval(ov%nodal_pressure),maxval(ov%nodal_pressure)
 write(*,'(a,2f30.20)') 'e2d               range : ',minval(ov%e2d),          maxval(ov%e2d)
 write(*,'(a,2f30.20)') 'e2d (nodes)       range : ',minval(ov_nodee2d),      maxval(ov_nodee2d)
 write(*,'(a,2f30.20)') 'crit              range : ',minval(ov%crit),         maxval(ov%crit)
@@ -752,17 +777,16 @@ if(output_disp_field==1) then
    enddo
 end if
 
-if(output_press_field==1) then 
-   write(iunit,'(a)')'SCALARS p float 1'
+if(output_press_fieldn==1) then 
+   write(iunit,'(a)')'SCALARS pressure_n float 1'
    write(iunit,'(a)')'LOOKUP_TABLE default'
    do i=1,nnn
       write(iunit,'(e11.4)') ov%nodal_pressure(rtf(i))
    enddo
 end if
 
-
-if(output_e2d_field==1) then 
-   write(iunit,'(a)')'SCALARS e2d float 1'
+if(output_e2d_fieldn==1) then 
+   write(iunit,'(a)')'SCALARS e2dn float 1'
    write(iunit,'(a)')'LOOKUP_TABLE default'
    do i=1,nnn
       write(iunit,'(e11.4)') ov_nodee2d(rtf(i))
@@ -777,7 +801,6 @@ if(output_crit_field==1) then
    enddo
 end if
 
-
 if(output_strain_field==1) then 
    write(iunit,'(a)')'SCALARS s float 1'
    write(iunit,'(a)')'LOOKUP_TABLE default'
@@ -805,42 +828,83 @@ if(output_lsf_field==1) then
       enddo
    enddo
 end if
-write(iunit,'(a)')'VECTORS velo float'
-do i=1,nnn
-   write(iunit,'(3e11.4)')ov%u(rtf(i)),ov%v(rtf(i)),ov%w(rtf(i))
-enddo
+
+if(output_velo_vect==1) then 
+   write(iunit,'(a)')'VECTORS velo float' 
+   do i=1,nnn 
+      write(iunit,'(3e11.4)')ov%u(rtf(i)),ov%v(rtf(i)),ov%w(rtf(i)) 
+   enddo 
+endif 
+
+if(output_preiso_velo_vect==1) then 
+   write(iunit,'(a)')'VECTORS preiso-velo float' 
+   do i=1,nnn 
+      write(iunit,'(3e11.4)')ov%u(rtf(i)),ov%v(rtf(i)),ov%wpreiso(rtf(i)) 
+   enddo 
+endif
 
 if (output_strain_tensor/=0) then
-allocate (strainn(3,3,nnn),nstrain(nnn))
-strainn=0.d0
-nstrain=0
-  do ie=1,nnne
-    if (elvoid(ie).eq.0) then
-    do k=1,nne
-    strainn(:,:,ftr(ov%icon(k,ie)))=strainn(:,:,ftr(ov%icon(k,ie)))+strain(:,:,ie)
-    nstrain(ftr(ov%icon(k,ie)))=nstrain(ftr(ov%icon(k,ie)))+1
-    enddo
-    endif
-  enddo
-do i=1,nnn
-if (nstrain(i).ne.0) strainn(:,:,i)=strainn(:,:,i)/nstrain(i)
-enddo
-write(iunit,'(a)')'TENSORS strain float'
-do i=1,nnn
-   write(iunit,'(3e11.4)') strainn(1,:,i)
-   write(iunit,'(3e11.4)') strainn(2,:,i)
-   write(iunit,'(3e11.4)') strainn(3,:,i)
-enddo
-deallocate (strainn,nstrain)
+   allocate (strainn(3,3,nnn),nstrain(nnn))
+   strainn=0.d0
+   nstrain=0
+   do ie=1,nnne
+      if (elvoid(ie).eq.0) then
+         do k=1,nne
+            strainn(:,:,ftr(ov%icon(k,ie)))=strainn(:,:,ftr(ov%icon(k,ie)))+strain(:,:,ie)
+            nstrain(ftr(ov%icon(k,ie)))=nstrain(ftr(ov%icon(k,ie)))+1
+         enddo
+      endif
+   enddo
+   do i=1,nnn
+      if (nstrain(i).ne.0) strainn(:,:,i)=strainn(:,:,i)/nstrain(i)
+   enddo
+   write(iunit,'(a)')'TENSORS strain float'
+   do i=1,nnn
+      write(iunit,'(3e11.4)') strainn(1,:,i)
+      write(iunit,'(3e11.4)') strainn(2,:,i)
+      write(iunit,'(3e11.4)') strainn(3,:,i)
+   enddo
+   deallocate (strainn,nstrain)
 endif
 
+write(iunit,'(a10,i10)')'CELL_DATA ', nnne 
+ 
+if (output_e2d_fielde==1) then
+   write(iunit,'(a)')'SCALARS e2de float 1' 
+   write(iunit,'(a)')'LOOKUP_TABLE default' 
+   do ie=1,ov%nleaves 
+      if (elvoid(ie).eq.0) then 
+         write(iunit,'(e11.4)') ov%e2d(ie)
+      endif 
+   enddo 
+end if 
+
+if(output_press_fielde==1) then  
+   write(iunit,'(a)')'SCALARS pressure_e float 1' 
+   write(iunit,'(a)')'LOOKUP_TABLE default' 
+   do ie=1,ov%nleaves 
+      if (elvoid(ie).eq.0) then 
+         write(iunit,'(e11.4)') ov%pressure(ie) 
+      endif 
+   enddo 
+end if 
+
+if(output_smooth_press_fielde==1) then  
+   write(iunit,'(a)')'SCALARS smooth_pressure_e float 1' 
+   write(iunit,'(a)')'LOOKUP_TABLE default' 
+   do ie=1,ov%nleaves 
+      if (elvoid(ie).eq.0) then 
+         write(iunit,'(e11.4)') ov%smooth_pressure(ie)
+      endif 
+   enddo 
+end if
+
 write(iunit,'(a)')'done visu.vtk'
 close(iunit)
 write(*,*) '--------------------------------------------------------------------------'
 write(*,*)'opla I am done producing visu.vtk '
 
 
-
 !==============================================================================
 !======[produce norm<i>.vtk file]==============================================
 !==============================================================================