upd
This commit is contained in:
		
							parent
							
								
									dea64a7b7f
								
							
						
					
					
						commit
						e1ae1c6236
					
				
					 2 changed files with 9 additions and 13 deletions
				
			
		| 
						 | 
				
			
			@ -1 +1 @@
 | 
			
		|||
__version__ = '0.1.4'
 | 
			
		||||
__version__ = '0.1.5'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -9,7 +9,7 @@ from scipy.stats import linregress
 | 
			
		|||
from scipy.optimize import curve_fit
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
def filter_signal_by_modes(time, signal, num_modes=1, bandwidth_factor=0.1, nyquist=False):
 | 
			
		||||
def filter_signal_by_modes(time, signal, num_modes=1, bandwidth_factor=0.1):
 | 
			
		||||
    """
 | 
			
		||||
    Filtre un signal pour extraire ses composantes fréquentielles dominantes.
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -68,17 +68,13 @@ def filter_signal_by_modes(time, signal, num_modes=1, bandwidth_factor=0.1, nyqu
 | 
			
		|||
        lowcut = max(0.01, freq - bandwidth)  # Éviter les fréquences négatives
 | 
			
		||||
        highcut = freq + bandwidth
 | 
			
		||||
    
 | 
			
		||||
        if nyquist:
 | 
			
		||||
            # Éviter les fréquences supérieures à la fréquence de Nyquist
 | 
			
		||||
            nyq = 0.5 * fs
 | 
			
		||||
            highcut = min(highcut, nyq * 0.99)  # Laisser une marge
 | 
			
		||||
        # Éviter les fréquences supérieures à la fréquence de Nyquist
 | 
			
		||||
        nyq = 0.5 * fs
 | 
			
		||||
        highcut = min(highcut, nyq * 0.99)  # Laisser une marge
 | 
			
		||||
 | 
			
		||||
            # Normaliser les fréquences
 | 
			
		||||
            lowcut_norm = lowcut / nyq
 | 
			
		||||
            highcut_norm = highcut / nyq
 | 
			
		||||
        else:
 | 
			
		||||
            lowcut_norm = lowcut
 | 
			
		||||
            highcut_norm = highcut
 | 
			
		||||
        # Normaliser les fréquences
 | 
			
		||||
        lowcut_norm = lowcut / nyq
 | 
			
		||||
        highcut_norm = highcut / nyq
 | 
			
		||||
        
 | 
			
		||||
        print(f"Filtrage à {freq:.2f} Hz: [{lowcut_norm:.3f}, {highcut_norm:.3f}] (normalisé)")
 | 
			
		||||
        
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue