espressomd-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[ESPResSo-users] cell_grid $ verlet_reuse


From: Mikheil Azatov
Subject: [ESPResSo-users] cell_grid $ verlet_reuse
Date: Tue, 4 Jan 2011 16:22:47 -0500

Hi,

I noticed my cell_grid size doesn't go above curtain size. Is there a limit on the number of cells or something like this ? I'm running the code on 2 CPUs and the maximum cell_grid I get is 20 40 40. If I increase the simulation box size or decrease the skin parameter it stays the same...

Also I noticed that my verlet_reuse parameter can only be 0 or 1 which is obviously not good for parallel computing. If I decrease my skin to like 0.1 then verlet_reuse is always 1.0 and if I start increasing the skin. the verlet _reuse starts to become 0 more and more integration steps. At large skin like 2 or 3, verlet_reuse is 0 every integration step. I'm a little bit confused here how is that possible... Shouldn't verlet_reuse increase when I increase the skin ? 

Thanks,
Mikheil




This is the code I run. Some other setmd commands correspond to other parameters that I added manually to Espresso for my simulation.

set name  "newbinding-test"
set ident "1"

set box_l 360
setmd box_l $box_l $box_l $box_l
setmd periodic 1 1 1
setmd mc_step 5

set ncross 1536
set lcross 2
set npart2 20
set npol2 99
set npol1 0 
set npart1 0

setmd l_cross $lcross
setmd num_part 1980
setmd n_pol $npol1

set kangle 515
inter 1 harmonic 10 8 9
inter 2 angle $kangle [expr [PI]]
inter 3 harmonic 10 3 9

set bond_id_harmonic 4
inter $bond_id_harmonic harmonic 1 5.5 9
setmd bond_id_harmonic $bond_id_harmonic

set bond_id_angle 5
inter $bond_id_angle angle 17 [PI]
setmd bond_id_angle 5

# The ID of this bond must be bond_id_angle +1 !!!!!!!!!!!!!!!
inter 6 angle 17 [expr [PI]/2] 
# Cross-linker's binding properties
setmd bind_distance 0
setmd bind_angle 0.3
setmd f_angle 0.3

constraint wall normal 0 0 -1 dist [expr -($box_l-10)] type 3
constraint wall normal 0 0 1 dist 10 type 3
constraint wall normal 0 -1 0 dist [expr -($box_l-10)] type 3
constraint wall normal 0 1 0 dist 10 type 3
constraint wall normal -1 0 0 dist [expr -($box_l-10)] type 3
constraint wall normal 1 0 0 dist 10 type 3

#set seed "[pid]"
#set seeds {}
#for {set i 0} {$i < [setmd n_nodes]} {incr i} {
#   lappend seeds [expr ($i+1)*$seed]
#}
#eval t_random seed $seeds

#polymer $npol1 $npart1 8 mode RW bond 1 angle [expr 0.95*[PI]] constraints
polymer $npol2 $npart2 8 start 0 mode SAW 8 bond 1 angle [expr 0.99*[PI]] constraints 


for {set i 0 } {$i < [expr $npol2] } {incr i} {
     for {set j 1} { $j < $npart2-1 } {incr j} {
     part [expr $j+$i*$npart2+$npol1*$npart1] bond 2 [expr $j+$i*$npart2+$npol1*$npart1-1] [expr $j+$i*$npart2+$npol1*$npart1+1]
     }
   
     for {set j 0} { $j < $npart2 } {incr j} {
     part [expr $j+$i*$npart2] mass 2.17
     part [expr $j+$i*$npart2] mol [expr $i]
     }
}


puts "polymers are ready"



polymer $ncross $lcross 3 start [expr $npol2*$npart2] mode SAW 3 bond 3 constraints
for {set i 0} { $i < $ncross } {incr i} {
  part [expr $i*$lcross+$npol2*$npart2] type 1 mass 0.5644
  part [expr $i*$lcross+$npol2*$npart2+1] type 1 mass 0.5644
  part [expr $i*$lcross+$npol2*$npart2] mol [expr $npol2+$i]
  part [expr $i*$lcross+$npol2*$npart2+1] mol [expr $npol2+$i]
}

puts "Cross-linkers are ready"

constraint delete

set sig [expr 8/1.12246]; set cut 9
set eps 0.412; set shift -1 
set sig1 [expr 5.5/1.12246];set cut1 6.5
inter 0 0 lennard-jones $eps $sig $cut $shift 0
inter 0 1 lennard-jones $eps $sig $cut $shift 0

set time_step [expr 0.005*10]
setmd time_step $time_step; setmd skin 0.1
set temp 0.412; set gamma [expr 30/10]
thermostat langevin $temp $gamma



    set mdist00 [open "$name$ident/$name$ident-mindist00.out" "w"]
    set mdist01 [open "$name$ident/$name$ident-mindist01.out" "w"]
    set erg [open "$name$ident/$name$ident-energy.out" "w"]
    set str [open "$name$ident/$name$ident-strucfac.out" "w"]
    set cm0 [open "$name$ident/$name$ident-cm0.out" "w"]  
    set cm1 [open "$name$ident/$name$ident-cm1.out" "w"] 

    writepsf "$name$ident/$name$ident.psf"
    writepdb "$name$ident/$name$ident.pdb"
    for {set port 10000} { $port < 65000 } { incr port } {
catch {imd connect $port} res
if {$res == ""} break
    }
    set HOSTNAME [exec hostname]



for {set cap 2} {$cap < 20} {incr cap 2} {
  puts "t=[setmd time] E=[analyze energy kinetic]"
  inter ljforcecap $cap; 
  imd positions 
  for {set i 0} {$i<10} {incr i} {
  set dmin [analyze mindist 0 0]
  puts $mdist00 "$dmin"

  set dmin [analyze mindist 0 1]
  puts $mdist01 "$dmin"
  integrate 1   
puts  [setmd verlet_reuse]
puts [setmd cell_grid]
  } 

}

inter ljforcecap 0


setmd bind_distance 7


puts  [setmd verlet_reuse]
puts [setmd cell_grid]




set pdbstep 1000
set pdbindex 0



for {set i 0} { $i < 10000000 } { incr i} {
  integrate 1
  #setmd time [expr $i*$time_step]
    imd positions
     puts "verlet_reuse =  [setmd verlet_reuse] "
     puts [setmd cell_grid]
     if {[expr $i%$pdbstep] == 0 } {
     incr pdbindex
     writepsf "$name$ident/$name$ident$pdbindex.psf"
     writepdb "$name$ident/$name$ident$pdbindex.pdb" 
     puts " i = $i "
     puts "verlet_reuse =  [setmd verlet_reuse] "
     }

  
}


reply via email to

[Prev in Thread] Current Thread [Next in Thread]