How to plot a triangular shape function on a triangular domain?

20 vues (au cours des 30 derniers jours)
Soroush Asarzadeh
Soroush Asarzadeh le 25 Avr 2016
Hello, I want to plot the following shape function: N(s,t)=t*(2*t-1) It has to look like the following diagramm:
but I get this one:
Here is my code:
[s,t]=meshgrid(0:0.1:1,0:0.1:1)
N3=@(s,t)t.*(2*t-1);
surf(s,t,N3(s,t))
I know that the problem is with the rectangular domain, that meshgrid generates. But I don't know how to define a triangular domain. Has anybody an idea?
Thanks

Réponse acceptée

Mike Garrity
Mike Garrity le 25 Avr 2016
I described one approach in this thread.
  3 commentaires
Mike Garrity
Mike Garrity le 26 Avr 2016
I think that passing a function handle into surf is making things more complicated than you really need.
I don't know what N3 is, but using the N from the top, I get this:
[s,t] = meshgrid(0:0.025:1);
z = t.*(2*t-1);
z(s+t > 1) = nan;
surf(s,t,z)
Soroush Asarzadeh
Soroush Asarzadeh le 27 Avr 2016
Thank you very much Mike!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Graphics Performance dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by