hamers / mse

Multiple Stellar Evolution -- A Population Synthesis Code for Multiple-Star Systems
GNU General Public License v3.0
9 stars 4 forks source link

CVODE issue (not really an error) #44

Closed pavanvyn closed 3 years ago

pavanvyn commented 3 years ago

This is not really a run-time error, but more of a warning. In the past few updates, I have noticed that CVODE prints a LOT of error lines similar to this -

[CVODE ERROR]  CVode
  At t = 7.34677e+06 and h = 0.000473526, the error test failed repeatedly or with |h| = hmin.

or this -

[CVODE ERROR]  CVodeGetDky
 Illegal value for t.t = 7.96553e+06 is not between tcur - hu = 7.96553e+06 and tcur = 7.96553e+06.

In all my runs, the first statement is printed out hundreds of millions of times. Given that I ran a similar number of systems, it is fine in a single system situation. But given what happens currently, it is not possible for me to go through the .e error file to look for specific errors. Either the files are too large to open (in 10s of GBs) or they are hidden in the CVODE lines, hard to track.

Is it possible to remove these print statements, if they are just warnings? Unless they are true errors.

pavanvyn commented 3 years ago

I tried running my code after putting this statement in types.h, as you suggested -

#define NO_FPRINTF_OUTPUT

However, it is the same. I am running it in the interactive mode, and I notice that some system/systems print out a lot of the CVODE lines. I am not sure how to identify the specific ones, without trying everything individually.

pavanvyn commented 3 years ago

I found one of these systems which is a binary. Version 5893b2790d42508c0b9609a628bab4f5c9f8e681

configuration = "2"
N_bodies = 2
masses = [15.909664732817724, 15.87561001234953]
metallicities = [0.02, 0.02]
semimajor_axes = [42.00765565203546]
eccentricities = [0.8912002522675211]
inclinations = [1.0746845026712764]
arguments_of_pericentre = [0.30824265216461105]
longitudes_of_ascending_node = [4.768309274997129]
tend = 1.400000E+10
N_steps = 100000
stellar_types = [1, 1]
object_types = [1, 1]
pavanvyn commented 3 years ago

I found a quadruple as well.

configuration = "[2,2]"
N_bodies = 4
masses = [9.91482458346942, 79.57612833802291, 36.77227914078397, 58.040436135946145]
metallicities = [0.02, 0.02, 0.02, 0.02]
semimajor_axes = [0.8172513170025549, 1.5424713214562353, 58.53865556023187]
eccentricities = [0.6600006713466409, 0.07523638830295744, 0.7485653872881707]
inclinations = [2.7170651313116814, 0.4669264745218412, 2.2618331812759416]
arguments_of_pericentre = [2.135345507260612, 0.2942040062525597, 0.8755704628242507]
longitudes_of_ascending_node = [1.41451872080377, 6.189714708332827, 4.293223201314372]
tend = 1.400000E+10
N_steps = 100000
stellar_types = [1, 1, 1, 1]
object_types = [1, 1, 1, 1]