frequency_output = frequency_output[cut_array_higher] # cut lower frequencies than cut_freq_lower cut_array_lower = np.invert(np.less(frequency_input, cut_freq_lower)) Sww = Sww[cut_array_lower] Shh = Shh[cut_array_lower] frequency_input = frequency_input[cut_array_lower] frequency_output = frequency_output[cut_array_lower] # fit the power spectrum with the analytical solution try: popt, pcov = shh_analytical_fit( Sww=Sww, Shh=Shh, f=frequency_input, x=x, m=m, n=n, L=L, norm=False, convergence=convergence, ) except RuntimeError: print("Optimal parameters not found...") popt, pcov = [np.nan, np.nan], [[np.nan, np.nan], [np.nan, np.nan]] print("popt and pcov have been set to np.nan") except ValueError: print( "either ydata or xdata contain NaNs, or if incompatible options are used" ) popt, pcov = [np.nan, np.nan], [[np.nan, np.nan], [np.nan, np.nan]] except OptimizeWarning:
o_i="o", ) frequency, Sww = power_spectrum( input=recharge_time_series, output=head_time_series, time_step_size=time_step_size, method="scipyffthalf", o_i="i", ) # fit the power spectrum with the analytical solution try: popt, pcov = shh_analytical_fit( Sww=Sww, Shh=Shh, f=frequency, x=obs_loc, m=m, n=n, L=aquifer_length, norm=False, ) except RuntimeError: print("Optimal parameters not found...") popt, pcov = [np.nan, np.nan], [[np.nan, np.nan],[np.nan, np.nan]] print("popt and pcov have been set to np.nan") except ValueError: print("either ydata or xdata contain NaNs, or if incompatible options are used") popt, pcov = [np.nan, np.nan], [[np.nan, np.nan],[np.nan, np.nan]] except OptimizeWarning: print("Covariance of the parameters could not be estimated.") #popt, pcov = [np.nan, np.nan], [[np.nan, np.nan],[np.nan, np.nan]]