Create a top hat function

44 vues (au cours des 30 derniers jours)
Jason
Jason le 28 Juin 2021
Commenté : Jason le 28 Juin 2021
Hello, Im trying to create a top hat function (that is 0 everywhere except between -halfpix & halfpix). the fucll width of the top hat (2* halfpix) is symetrical about the yaxis.
i've created it based in discrete values as below but I would like it as a general function.
x = -20:0.1:20;
t = zeros(1,length(x))
t(x>=-halfpix & x<halfpix) = 1;

Réponse acceptée

Rik
Rik le 28 Juin 2021
If you realize that you are marking all true locations with 1 and leaving all false as 0, you can use that to make an anonymous function that only casts you logical statement to double.
  5 commentaires
Rik
Rik le 28 Juin 2021
You already know how to do that. You already used the code in your own question:
t=@(x) double(x>=-halfpix & x<halfpix)
Jason
Jason le 28 Juin 2021
Perfect, thankyou

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur MATLAB dans Help Center et File Exchange

Produits


Version

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by