Ignore:
Timestamp:
Feb 21, 2012 12:00:36 PM (10 years ago)
Author:
raasch
Message:

New:
---

Changed:


Optimization of collision kernels. Collision tables can be calculated once at
simulation start for defined radius (and dissipation) classes instead of
re-calculating them at every timestep and for the particle ensemble in
every gridbox.
For this purpose the particle feature color is renamed class.
New parpar parameters radius_classes and dissipation_classes.
(Makefile, advec_particles, check_parameters, data_output_dvrp, header, init_particles, lpm_collision_kernels, modules, package_parin, set_particle_attributes)

Lower limit for droplet radius changed from 1E-7 to 1E-8.
(advec_particles)

Complete re-formatting of collision code (including changes in names of
variables, modules and subroutines).
(advec_particles, lpm_collision_kernels)

Errors:


Bugfix: transformation factor for dissipation changed from 1E5 to 1E4
(advec_particles, lpm_collision_kernels)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • palm/trunk/SOURCE/init_particles.f90

    r826 r828  
    44! Current revisions:
    55! -----------------
    6 !
     6! call of init_kernels, particle feature color renamed class
    77!
    88! Former revisions:
     
    7272    USE grid_variables
    7373    USE indices
     74    USE lpm_collision_kernels_mod
    7475    USE particle_attributes
    7576    USE pegrid
     
    148149       IF ( pdz(j) == 9999999.9  .OR.  pdz(j) == 0.0 )  pdz(j) = pdz(j-1)
    149150    ENDDO
     151
     152!
     153!-- Initialize collision kernels
     154    IF ( collision_kernel /= 'none' )  CALL init_kernels
    150155
    151156!
     
    343348                            particles(n)%radius      = particle_groups(i)%radius
    344349                            particles(n)%weight_factor =initial_weighting_factor
    345                             particles(n)%color         = 1
     350                            particles(n)%class         = 1
    346351                            particles(n)%group         = i
    347352                            particles(n)%tailpoints    = 0
     
    470475             IF ( MINVAL( particles(1:n)%dvrp_psize  ) ==     &
    471476                  MAXVAL( particles(1:n)%dvrp_psize  )  .AND. &
    472                   MINVAL( particles(1:n)%color ) ==     &
    473                   MAXVAL( particles(1:n)%color ) )  THEN
     477                  MINVAL( particles(1:n)%class ) ==     &
     478                  MAXVAL( particles(1:n)%class ) )  THEN
    474479                uniform_particles_l = .TRUE.
    475480             ELSE
     
    532537                particle_tail_coordinates(1,2,nn) = particles(n)%y
    533538                particle_tail_coordinates(1,3,nn) = particles(n)%z
    534                 particle_tail_coordinates(1,4,nn) = particles(n)%color
     539                particle_tail_coordinates(1,4,nn) = particles(n)%class
    535540                particles(n)%tailpoints = 1
    536541                IF ( minimum_tailpoint_distance /= 0.0 )  THEN
     
    538543                   particle_tail_coordinates(2,2,nn) = particles(n)%y
    539544                   particle_tail_coordinates(2,3,nn) = particles(n)%z
    540                    particle_tail_coordinates(2,4,nn) = particles(n)%color
     545                   particle_tail_coordinates(2,4,nn) = particles(n)%class
    541546                   particle_tail_coordinates(1:2,5,nn) = 0.0
    542547                   particles(n)%tailpoints = 2
Note: See TracChangeset for help on using the changeset viewer.