tprevent contact list overrun, use elastic interaction in nares strait example - Granular.jl - Julia package for granular dynamics simulation
 (HTM) git clone git://src.adamsgaard.dk/Granular.jl
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 7bafd0d7e6f0476e8effe65a232673f1b74bd019
 (DIR) parent 09f45f8ba9a400b62df5ac97affca06066b3707c
 (HTM) Author: Anders Damsgaard <andersd@riseup.net>
       Date:   Wed, 10 May 2017 13:34:04 -0400
       
       prevent contact list overrun, use elastic interaction in nares strait example
       
       Diffstat:
         M examples/nares_strait.jl            |       7 ++++---
         M src/interaction.jl                  |       7 +++++--
       
       2 files changed, 9 insertions(+), 5 deletions(-)
       ---
 (DIR) diff --git a/examples/nares_strait.jl b/examples/nares_strait.jl
       t@@ -4,7 +4,7 @@ import SeaIce
        #sim = SeaIce.createSimulation(id="nares_strait")
        #n = [25, 25, 2]
        
       -sim = SeaIce.createSimulation(id="nares_strait_coarse")
       +sim = SeaIce.createSimulation(id="nares_strait_coarse_elast")
        n = [6, 6, 2]
        
        # Initialize ocean
       t@@ -110,8 +110,9 @@ info("added $(n) ice floes")
        SeaIce.removeSimulationFiles(sim)
        
        k_n = 1e6  # N/m
       -k_t = 0.
       -gamma_t = 1e7  # N/(m/s)
       +k_t = k_n
       +#gamma_t = 1e7  # N/(m/s)
       +gamma_t = 0.
        mu_d = 0.7
        rotating = true
        for i=1:length(sim.ice_floes)
 (DIR) diff --git a/src/interaction.jl b/src/interaction.jl
       t@@ -8,11 +8,14 @@ Resolve mechanical interaction between all particle pairs.
        """
        function interact!(simulation::Simulation)
            for i=1:Int(ceil(length(simulation.ice_floes)/2.))  # i <= Int(N/2)
       -        for ic=1:simulation.ice_floes[i].n_contacts
       -        #for ic=1:Nc_max
       +        for ic=1:Nc_max
        
                    j = simulation.ice_floes[i].contacts[ic]
        
       +            if j == 0
       +                break  # end of contact list reached
       +            end
       +
                    if norm(simulation.ice_floes[i].lin_pos - 
                            simulation.ice_floes[j].lin_pos) - 
                        (simulation.ice_floes[i].contact_radius +