H(S) EN MATLAB

kh_mou -  
Sacabouffe Messages postés 9427 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
je veux bien ploter une fonction de transfert suivante:
H(s)=num(s)/den(s), avec
num(s)=0.2*(s/fs)¨3 + 0.5*(s/fs)¨2 + 0.14*(s/fs) - 0.25 est d'ordre 3.
den(s) = (s/fs)¨4 + 0.5*(s/fs)¨2 + 0.125 est d'ordre 4.

avec fs: Sampling frequency = 51.2Mhz

frequence central = 100khz avec bandwith de 200khz.

sachant, que jai utilise les fonctions : plot () et simelog().

mai le probleme coment il fo ke je declare fs ???

je considere w= s/fs ? o bien il fo ke je travaille avec frequence f ?

N.B: fonction transfert pour sigma-delta.

merci infiniment.
Configuration: Windows XP
Internet Explorer 7.0

1 réponse

  1. Sacabouffe Messages postés 9427 Date d'inscription   Statut Membre Dernière intervention   1 863
     
    Salut kh_mou
    fs=51.2e3;
    paslogs=1e-3;
    logs=log(300)*(0:paslogs:1);
    s=10.^logs;
    nums=0.2*(s./fs).^3 + 0.5*(s./fs).^2 + 0.14*(s./fs) - 0.25;
    dens=(s./fs).^4 + 0.5*(s./fs).^2 + 0.125;
    Hs=nums./dens;
    semilogx(s,Hs);
    

    C'était un truc comme ça que tu voulais?
    A plus
    0
    1. Sacabouffe Messages postés 9427 Date d'inscription   Statut Membre Dernière intervention   1 863
       
      Arf... Il y a une coquille, j'ai pas pris le logarithme décimal. Et pis c'est peut-être mieux de choisir la plage sur laquelle tu veux tracer...
      Correction :
      fs=51.2e3; %% en kHz
      paslogs=1e-3;
      freqhaute=1e6; %% 1GHz (en kHz)
      logs=log10(freqhaute)*(0:paslogs:1);
      s=10.^logs;
      nums=0.2*(s./fs).^3 + 0.5*(s./fs).^2 + 0.14*(s./fs) - 0.25;
      dens=(s./fs).^4 + 0.5*(s./fs).^2 + 0.125;
      Hs=nums./dens;
      semilogx(s,Hs);
      

      A plus
      0