Bonjour,

Je viens vers vous concernant le plot 3D d'une surface que je n'arrive pas à effectuer . Mon code se présente de cette façon :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
function [X,Y,Z]=SURF(EULER,l)
//Je transforme les données d'angles d'EULER (radians) en directions principales de contraintes (en degrés pour une meilleure visualisation)
    XE=EULER(l,1)
    YE=EULER(l,2)
    ZE=EULER(l,3)
    if (ZE<0) then
        XE=-XE
        YE=-YE
        ZE=-ZE
    end
    a=atan(YE,XE)+%pi()
    if ((a.*180./%pi())<0) then
        a=(360+a)*%pi()/180
    end
    if ((a.*180./%pi())>360) then
        a=(a-360)*%pi()/180
    end
    if ((ZE.*180./%pi())<0) then
        ZE=-ZE
    end
    p=asin(ZE)
    [x,y]=ProjWulff(a,p)  //Il s'agit d'une projection dans un canevas de wulff 
    X(l)=x
    Y(l)=y
    Z(l)=EULER(l,5)
endfunction
 
function SPHERE(EULER)
    stacksize('max')
    [NL NC]=size(EULER)
    NL=NL(1,1)
    l=1:NL
    [X,Y,Z]=eval3dp(SURF,EULER,l)
    scf
    f=gcf()
    f.color_map=jetcolormap(64)
    colorbar(0,1)
    plot3d1(X,Y,Z)
    contour(X,Y,Z,5)
endfunction
Mon problème se situe au niveau d'eval3dp. J'ai un gros problème de taille de stockage des données apparemment. Et ceux, même en utilisant stacksize ('max').
Quelqu'un pourrait-il m'aider? Je me demande si mon code est correct et ne surévalue pas après dans eval3dp? Qu'est-ce que vous en pensez?

Merci d'avance

Milka