@@ -863,10 +863,6 @@ def check_RLOF(self):
863
863
if star .radius >= Rl3 - (1.0 * small_numerical_error | units .RSun ):
864
864
star .is_donor = True
865
865
866
- if star .is_donor and (bin .child1 .is_donor or bin .child2 .is_donor ):
867
- print (Rl1 , bin .child1 .radius , Rl2 , bin .child2 .radius )
868
- print (Rl3 , star .radius )
869
- sys .exit ('RLOF in inner and outer binary' )
870
866
871
867
else :
872
868
sys .exit ('check_RLOF: structure stellar system unknown' )
@@ -1842,29 +1838,33 @@ def resolve_stellar_interaction(self, stellar_system = None):
1842
1838
return
1843
1839
elif self .is_binary (stellar_system ):
1844
1840
if REPORT_TRIPLE_EVOLUTION :
1845
- print ('\n perform stellar interaction: binary - double star ' )
1841
+ print ('\n perform stellar interaction: binary' )
1846
1842
# stellar_system = perform_stellar_interaction(stellar_system, self)
1847
1843
stopping_condition = perform_stellar_interaction (stellar_system , self )
1848
1844
return stopping_condition #stellar interaction
1849
1845
else :
1850
- if not stellar_system .child1 .is_star : #child1 is a multiple
1851
- stopping_condition = self .resolve_stellar_interaction (stellar_system .child1 )
1852
- if not stopping_condition : #stellar interaction
1853
- return False
1854
- elif not stellar_system .child2 .is_star : #child2 is a multiple
1855
- stopping_condition = self .resolve_stellar_interaction (stellar_system .child2 )
1856
- if not stopping_condition : #stellar interaction
1857
- return False
1858
- else :
1859
- sys .exit ('resolve_stellar_interaction: structure stellar system unknown, both children are binaries' )
1860
-
1861
1846
if REPORT_TRIPLE_EVOLUTION :
1862
- print ('\n perform stellar interaction: binary ' )
1863
- # stellar_system = perform_stellar_interaction(stellar_system, self)
1847
+ print ('\n perform stellar interaction' )
1848
+
1864
1849
stopping_condition = perform_stellar_interaction (stellar_system , self )
1865
1850
if not stopping_condition : #stellar interaction
1866
1851
return False
1852
+
1853
+ if stopping_conditions > 0 :
1854
+ #in case of outer mass transfer, skip inner evolution, is taken care of in outer mass transfer
1855
+ if not stellar_system .child1 .is_star : #child1 is a multiple
1856
+ stopping_condition = self .resolve_stellar_interaction (stellar_system .child1 )
1857
+ if not stopping_condition : #stellar interaction
1858
+ return False
1859
+ elif not stellar_system .child2 .is_star : #child2 is a multiple
1860
+ stopping_condition = self .resolve_stellar_interaction (stellar_system .child2 )
1861
+ if not stopping_condition : #stellar interaction
1862
+ return False
1863
+ else :
1864
+ sys .exit ('resolve_stellar_interaction: structure stellar system unknown, both children are binaries' )
1865
+
1867
1866
return True
1867
+
1868
1868
1869
1869
def determine_mass_transfer_timescale (self , stellar_system = None ):
1870
1870
0 commit comments