2121logger = logging .getLogger (__name__ )
2222
2323
24-
2524def track_analyzer_call (func ):
2625 """Decorator to track call count and execution time of Analyzer methods."""
2726
@@ -163,7 +162,9 @@ def rasterize_solution(
163162 if not ki [i ]:
164163 issupported [nic [i ] : nic [i + 1 ]] = False
165164 # Compute segment solution
166- zi = self .sm .z (xi , C [:, [i ]], length , phi , theta , ki [i ], is_loaded = gi [i ], qs = qs )
165+ zi = self .sm .z (
166+ xi , C [:, [i ]], length , phi , theta , ki [i ], is_loaded = gi [i ], qs = qs
167+ )
167168 # Assemble global solution matrix
168169 zs [:, nic [i ] : nic [i + 1 ]] = zi
169170
@@ -586,7 +587,7 @@ def incremental_ERR(
586587 C_uncracked = self .sm .uncracked_unknown_constants
587588 C_cracked = self .sm .unknown_constants
588589 phi = self .sm .scenario .phi
589- theta = self .sm .scenario .theta
590+ theta = self .sm .scenario .theta
590591 qs = self .sm .scenario .surface_load
591592
592593 # Reduce inputs to segments with crack advance
@@ -634,7 +635,6 @@ def incremental_ERR(
634635 self ._integrand_GII , z_uncracked = z_uncracked , z_cracked = z_cracked
635636 )
636637
637-
638638 # Segment contributions to total crack opening integral
639639 Ginc1 += quad (intGI , 0 , length , epsabs = tolerance , epsrel = tolerance )[0 ] / (
640640 2 * da
@@ -663,7 +663,7 @@ def differential_ERR(
663663 gi = self .sm .scenario .gi
664664 C = self .sm .unknown_constants
665665 phi = self .sm .scenario .phi
666- theta = self .sm .scenario .theta
666+ theta = self .sm .scenario .theta
667667 qs = self .sm .scenario .surface_load
668668
669669 # Get number and indices of segment transitions
@@ -681,31 +681,75 @@ def differential_ERR(
681681
682682 # Compute energy relase rate of all crack tips
683683 for j , idx in enumerate (ict ):
684-
685684 # Solution at crack tip
686685
687686 # Solution at unpertrubed side
688687
689688 # Mode I, II and III differential energy release rates
690689 if not self .sm .is_generalized :
691690 z = self .sm .z (
692- li [idx ], C [:, [idx ]], li [idx ], phi = phi , theta = theta ,has_foundation = ki [idx ],is_loaded = gi [idx ], qs = qs if gi [idx ] else 0
691+ li [idx ],
692+ C [:, [idx ]],
693+ li [idx ],
694+ phi = phi ,
695+ theta = theta ,
696+ has_foundation = ki [idx ],
697+ is_loaded = gi [idx ],
698+ qs = qs if gi [idx ] else 0 ,
693699 )
694700 Gdif [1 :3 , j ] = np .concatenate (
695701 (self .sm .fq .Gi (z , unit = unit ), self .sm .fq .Gii (z , unit = unit ))
696702 )
697703 else :
698704 if ki [idx ]:
699- z_ct = self .sm .z (li [idx ], C [:,[idx ]], li [idx ], phi = phi , theta = theta , has_foundation = ki [idx ], is_loaded = gi [idx ], qs = qs )
700- z_ub = self .sm .z (li [idx ], C [:,[idx ]], li [idx ], phi = phi , theta = theta , has_foundation = ki [idx ], is_loaded = gi [idx ], qs = qs )
705+ z_ct = self .sm .z (
706+ li [idx ],
707+ C [:, [idx ]],
708+ li [idx ],
709+ phi = phi ,
710+ theta = theta ,
711+ has_foundation = ki [idx ],
712+ is_loaded = gi [idx ],
713+ qs = qs ,
714+ )
715+ z_ub = self .sm .z (
716+ li [idx ],
717+ C [:, [idx ]],
718+ li [idx ],
719+ phi = phi ,
720+ theta = theta ,
721+ has_foundation = ki [idx ],
722+ is_loaded = gi [idx ],
723+ qs = qs ,
724+ )
701725 else :
702- z_ct = self .sm .z (li [idx ], C [:,[idx ]], li [idx ], phi = phi , theta = theta , has_foundation = ki [idx ], is_loaded = gi [idx ], qs = qs )
703- z_ub = self .sm .z (li [idx ], C [:,[idx ]], li [idx ], phi = phi , theta = theta , has_foundation = ki [idx ], is_loaded = gi [idx ], qs = qs )
704- Gdif [1 :,j ] = np .concatenate (
705- (self .sm .fq .Gi (z_ct ,z_ub , phi = phi , theta = theta , unit = unit ),
706- self .sm .fq .Gii (z_ct ,z_ub , phi = phi , theta = theta , unit = unit ),
707- self .sm .fq .Giii (z_ct ,z_ub , phi , theta , unit = unit ),)
726+ z_ct = self .sm .z (
727+ li [idx ],
728+ C [:, [idx ]],
729+ li [idx ],
730+ phi = phi ,
731+ theta = theta ,
732+ has_foundation = ki [idx ],
733+ is_loaded = gi [idx ],
734+ qs = qs ,
735+ )
736+ z_ub = self .sm .z (
737+ li [idx ],
738+ C [:, [idx ]],
739+ li [idx ],
740+ phi = phi ,
741+ theta = theta ,
742+ has_foundation = ki [idx ],
743+ is_loaded = gi [idx ],
744+ qs = qs ,
708745 )
746+ Gdif [1 :, j ] = np .concatenate (
747+ (
748+ self .sm .fq .Gi (z_ct , z_ub , phi = phi , theta = theta , unit = unit ),
749+ self .sm .fq .Gii (z_ct , z_ub , phi = phi , theta = theta , unit = unit ),
750+ self .sm .fq .Giii (z_ct , z_ub , phi , theta , unit = unit ),
751+ )
752+ )
709753 # Sum mode I and II contributions
710754 Gdif [0 , :] = Gdif [1 , :] + Gdif [2 , :] + Gdif [3 , :]
711755
0 commit comments