Surface entre deux courbes

Tout ce qui concerne l'utilisation ou l'installation de LaTeX.

Modérateur: gdm_tex

Règles du forum
Merci d'éviter le style SMS dans vos messages et de penser à utiliser la fonction Recherche avant de poster un message. Pour joindre des fichiers à vos messages, consulter ce sujet.
> Penser à utiliser les balises Code pour poster du code.

Surface entre deux courbes

Messagepar SB » Vendredi 16 Avril 2010, 12:22

Bonjour,

j'aimerais hachuré la surface entre deux courbes, j'ai un bout de code qui ne fait pas ce que je voudrais.

Code: Tout sélectionner
\documentclass[11pt]{article}

\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}

\usepackage{pst-all}

\begin{document}
\psset{xunit=1cm,yunit=3cm}
\begin{pspicture}(-0.5,-0.5)(10,3.5)
\psaxes[linewidth=1.5pt,Dx=1,Dy=1]{->}(0,0)(0,0)(10,3.5)
\psplot[plotpoints=200,linecolor=blue]{0}{10}{2.718283 x -1 mul exp x mul 3 mul}
\uput[ur](1,1.5){$\blue \Gamma$}
\psplot[plotpoints=200,linecolor=blue]{0}{10}{2.718283 x -1 mul exp x 3 add mul}
\uput[u](3.5,0.32){$\blue \mathcal{C}$}
\psline[linewidth=1.2pt,linecolor=red]{-}(0,0)(1,3)
\uput[l](1,3){$\red \Delta$}
\pscustom[fillstyle=hlines,linestyle=solid,linecolor=white,linewidth=0.0pt]
{% linecolor=white,linewidth=0.0pt permet de ne pas avoir de trait en diagonales
% reliant les deux  points d'intersections
\psplot{0}{1.5}{2.718283 x -1 mul exp x 3 add mul} % courbe du haut
\psplot{0}{1.5}{2.718283 x -1 mul exp x mul 3 mul} % courbe du bas
%\psplot{0}{1.5}{2.718283 x -1 mul exp x 3 add mul} % courbe du haut
}
\end{pspicture}
\end{document}


Comment le rectifier pour arriver à hachurer la surface entre Gamma et C, sur [0;1,5] ?

SB
SB
Kilo-utilisateur
 
Messages: 238
Inscription: Lundi 07 Juillet 2008, 07:15
Statut actuel: Actif et salarié | Enseignant

Publicité

Re: surface entre deux courbes

Messagepar kojak » Vendredi 16 Avril 2010, 12:39

bonjour,

Je ne réponds pas tout à fait à ta question, mais je ne chargerais que pstricks-add et pst-math au lieu de pst-all.

Cela te permettrait de ne pas mettre en rpn mais directement avec
Code: Tout sélectionner
psset{algebraic=true}
tes fonctions en clair ainsi que ton exponentielle

Code: Tout sélectionner
\psplot[plotpoints=200,linecolor=blue]{0}{10}{3*x*EXP(-x)}
\psplot{0}{1.5}{(x+3)*EXP(-x)}
par exemple :wink:

PS : tu veux l'aire entre quelles courbes ?
pas d'aide par MP
kojak
Modérateur
 
Messages: 10399
Inscription: Samedi 18 Novembre 2006, 19:50
Statut actuel: Actif et salarié | Enseignant

Re: surface entre deux courbes

Messagepar oleanet » Vendredi 16 Avril 2010, 13:38

Un petit coup de texgraph avec le modèle exportpst:

Code: Tout sélectionner
% TeXgraph
% \usepackage{pstricks-add, pst-math}
\psset{xunit=1cm, yunit=1cm}
\begin{pspicture}(-0.5,-0.5)(10.5,4)%
\psset{linewidth=0.4pt}
{\small\psaxes[ticksize=-1mm 1mm,labelsep=1mm]{->}(0,0)(10,3.5)}%
\psset{linewidth=0.1pt,fillstyle=hlines,hatchwidth=0.2pt,hatchangle=45,hatchcolor=[rgb]{0.502,0.502,0.502}}
\pscustom{% Intégrale2
\psplot[algebraic]{0}{1.5}{(3+x)*EXP(-(x))}
\psplot[algebraic]{1.5}{0}{3*EXP(-(x))}
\closepath}%end of Intégrale2
\psset{linecolor=[rgb]{1,0,0},linewidth=0.8pt,fillstyle=none}
\psplot[algebraic]{0}{10}{(3+x)*EXP(-(x))}
\psset{linecolor=[rgb]{0,0,0.502}}
\psplot[algebraic]{0}{10}{3*EXP(-(x))}
\end{pspicture}%
oleanet
Méga-utilisateur
 
Messages: 258
Inscription: Dimanche 24 Décembre 2006, 15:17

Re: surface entre deux courbes

Messagepar SB » Vendredi 16 Avril 2010, 13:41

Merci kojak,

mais la notation polonaise ne me pose pas de problème, j'essaierai plus tard en algébrique.

Bon j'ai fait ça, en relisant la doc de pstricks

Code: Tout sélectionner
\documentclass[11pt]{article}

\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}

\usepackage{pst-all}

\begin{document}
\psset{xunit=1cm,yunit=3cm}
\begin{pspicture}(-0.5,-0.5)(10,3.5)
\psaxes[linewidth=1.5pt,Dx=1,Dy=1]{->}(0,0)(0,0)(10,3.5)
\psplot[plotpoints=200,linecolor=blue]{0}{10}{2.718283 x -1 mul exp x mul 3 mul}
\uput[ur](1,1.5){$\blue \Gamma$}
\psplot[plotpoints=200,linecolor=blue]{0}{10}{2.718283 x -1 mul exp x 3 add mul}
\uput[u](3.5,0.32){$\blue \mathcal{C}$}
\psline[linewidth=1.2pt,linecolor=red]{-}(0,0)(1,3)
\uput[l](1,3){$\red \Delta$}
\pscustom[linewidth=2pt,fillstyle=hlines]{%
\pscurve(0,0)(0.75,1.06)(1,1.1)(1.25,1.07)(1.5,1)%(0,2)(1,2.5)(2,1.5)(4,3)
\pscurve[liftpen=1](1.5,1)(1.25,1.22)(1,1.47)(0.75,1.77)(0,3)}
\end{pspicture}
\end{document}


je comprends pourquoi le premier code marche pas mais ne sais mieux faire

SB
SB
Kilo-utilisateur
 
Messages: 238
Inscription: Lundi 07 Juillet 2008, 07:15
Statut actuel: Actif et salarié | Enseignant

Re: surface entre deux courbes

Messagepar SB » Vendredi 16 Avril 2010, 13:53

Merci oleanet,

c'est nickel

SB
SB
Kilo-utilisateur
 
Messages: 238
Inscription: Lundi 07 Juillet 2008, 07:15
Statut actuel: Actif et salarié | Enseignant

Re: surface entre deux courbes

Messagepar kojak » Vendredi 16 Avril 2010, 15:30

SB a écrit:mais la notation polonaise ne me pose pas de problème,
Il n'y a pas que ça. La fonction $\exp$ est définie dans pst-math, au lieu de mettre $2.718^x$ c'est quand même mieux de mettre
Code: Tout sélectionner
EXP(x)
:wink:
pas d'aide par MP
kojak
Modérateur
 
Messages: 10399
Inscription: Samedi 18 Novembre 2006, 19:50
Statut actuel: Actif et salarié | Enseignant

Re: Surface entre deux courbes

Messagepar Thierry Wybrecht » Jeudi 22 Avril 2010, 11:25

Bonjour,

J'arrive un peu tard, mais pour que ton premier code fonctionne, inverse les bornes de calcul de ta deuxième fonction (afin de produire un chemin fermé dans un sens) :
Code: Tout sélectionner
\begin{pspicture}(-0.5,-0.5)(10,3.5)
\psaxes[linewidth=1.5pt,Dx=1,Dy=1]{->}(0,0)(0,0)(10,3.5)
\psplot[plotpoints=200,linecolor=blue]{0}{10}{2.718283 x -1 mul exp x mul 3 mul}
\uput[ur](1,1.5){$\blue \Gamma$}
\psplot[plotpoints=200,linecolor=blue]{0}{10}{2.718283 x -1 mul exp x 3 add mul}
\uput[u](3.5,0.32){$\blue \mathcal{C}$}
\psline[linewidth=1.2pt,linecolor=red]{-}(0,0)(1,3)
\uput[l](1,3){$\red \Delta$}
\pscustom[fillstyle=hlines,linestyle=solid,linecolor=white,linewidth=0.0pt]{%
\psplot{0}{1.5}{2.718283 x -1 mul exp x 3 add mul} % courbe du haut
\psplot{1.5}{0}{2.718283 x -1 mul exp x mul 3 mul} % courbe du bas
}
\end{pspicture}


Ça marchera mieux.

Thierry
Thierry Wybrecht
Déca-utilisateur
 
Messages: 21
Inscription: Jeudi 05 Avril 2007, 16:22
Statut actuel: Actif et salarié | Enseignant

Re: surface entre deux courbes

Messagepar rebouxo » Jeudi 22 Avril 2010, 13:12

kojak a écrit:
SB a écrit:mais la notation polonaise ne me pose pas de problème,
Il n'y a pas que ça. La fonction $\exp$ est définie dans pst-math, au lieu de mettre $2.718^x$ c'est quand même mieux de mettre
Code: Tout sélectionner
EXP(x)
:wink:


Et bizarrement, la fonction EXP n'est pas reconnu par \pstplotTangent, il faudra que j'en touche un mot à Herbert.

Olivier
A line is a point that went for a walk. Paul Klee
Par solidarité, pas de MP
rebouxo
Modérateur
 
Messages: 6930
Inscription: Mercredi 15 Février 2006, 13:18
Localisation: le havre
Statut actuel: Actif et salarié | Enseignant

Re: Surface entre deux courbes

Messagepar CIRRUS » Samedi 24 Avril 2010, 00:55

Bonjour,

Pour rebondir sur le sujet, je cherche le code pstricks pour :
1/ hachurer la surface délimitée par l'intersection de deux ellipses
2/ hachurer la surface délimitée par la réunion de deux ellipses

J'ai fait plusieurs tentatives... sans succès.

Merci d'avance.

Code: Tout sélectionner
\documentclass[10pt]{article}
\usepackage{pstricks-add}
\pagestyle{empty}
\begin{document}
\newrgbcolor{ffqqtt}{1 0 0.2}
\psset{xunit=0.5cm,yunit=0.5cm,algebraic=true,dotstyle=o,dotsize=3pt 0,linewidth=0.8pt,arrowsize=3pt 2,arrowinset=0.25}
\begin{pspicture*}(-2.281,3.455)(20.908,18.979)
\rput{-12.606}(5.821,10.04){\psellipse[linecolor=ffqqtt](0,0)(6.633,5.103)}
\rput{39.29}(13.141,11.721){\psellipse[linecolor=blue](0,0)(6.831,5.453)}
\rput[bl](3.251,13.935){\ffqqtt{$c$}}
\rput[bl](11.577,15.28){\blue{$d$}}
\psdots[dotstyle=*,linecolor=darkgray](10.287,5.866)
\rput[bl](10.515,6.201){\darkgray{$F$}}
\psdots[dotstyle=*,linecolor=darkgray](8.353,14.571)
\rput[bl](8.559,14.888){\darkgray{$G$}}
\end{pspicture*}
\end{document}
CIRRUS
Déca-utilisateur
 
Messages: 18
Inscription: Samedi 10 Octobre 2009, 02:55
Localisation: Paris
Statut actuel: Post-bac | Ecole d'ingénieur

Re: Surface entre deux courbes

Messagepar CIRRUS » Dimanche 25 Avril 2010, 00:23

Commande : \psclip

qui marche parfaitement.

Réponse de M. Herbert Voss :

Code: Tout sélectionner
\documentclass[10pt]{article}
\usepackage{pstricks-add}
\pagestyle{empty}
\begin{document}
\newrgbcolor{ffqqtt}{1 0 0.2}
\psset{unit=0.5,dotsize=3pt 0}
\begin{pspicture}(-2.281,3.455)(20.908,18.979)
\psclip{\psellipse[linecolor=ffqqtt,rot=-12.606](5.821,10.04)(6.633,5.103)}
\psellipse[linecolor=blue,fillstyle=vlines,rot=39.29](13.141,11.721)(6.831, 5.453)
\endpsclip
\psellipse[linecolor=blue,rot=39.29](13.141,11.721)(6.831,5.453)
\rput[bl](3.251,13.935){\ffqqtt{$c$}}
\rput[bl](11.577,15.28){\blue{$d$}}
\psdots[linecolor=darkgray](10.287,5.866)
\rput[bl](10.515,6.201){\darkgray{$F$}}
\psdots[linecolor=darkgray](8.353,14.571)
\rput[bl](8.559,14.888){\darkgray{$G$}}
\end{pspicture}
\begin{pspicture}(-2.281,3.455)(20.908,18.979)
\psellipse[linecolor=blue,rot=39.29,fillstyle=vlines](13.141,11.721)(6.831, 5.453)
\psclip{\psellipse[linecolor=ffqqtt,rot=-12.606,fillstyle=vlines](5.821,10. 04)(6.633,5.103)}
  \psellipse*[linecolor=white,rot=39.29](13.141,11.721)(6.831,5.453)
\endpsclip
\rput[bl](3.251,13.935){\ffqqtt{$c$}}
\rput[bl](11.577,15.28){\blue{$d$}}
\psdots[linecolor=darkgray](10.287,5.866)
\rput[bl](10.515,6.201){\darkgray{$F$}}
\psdots[linecolor=darkgray](8.353,14.571)
\rput[bl](8.559,14.888){\darkgray{$G$}}
\end{pspicture}
\end{document}
CIRRUS
Déca-utilisateur
 
Messages: 18
Inscription: Samedi 10 Octobre 2009, 02:55
Localisation: Paris
Statut actuel: Post-bac | Ecole d'ingénieur


Retourner vers LaTeX

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Ahrefs [Bot], Bing [Bot], Google Adsense [Bot], Grapeshot [Crawler], Yandex [Bot] et 3 invités