Bonjour à tous. Dans le cadre de mon TIPE je cherche à coder un algorithme python pour modéliser la création des motifs sur les pelages des animaux. J’ai essayé de coder par moi-même, soit avec des fonctions python, soit avec un schéma numérique… mais cela ne donne pas grand-chose (mon « pelage » reste uni sans motif). J’ai donc trouvé cet algorithme en MAPLE (je n’y connais rien du tout) qui normalement fonctionne mais je n’ai pas réussi à le traduire correctement. Quelqu’un saurait-il me le transcrire en python ? merci beaucoup
> with(linalg) ;
Les fonctions de reaction :
> f :=(u,v,a) -> a-u+u^2*v ;
> g :=(u,v,b)->b-u^2*v ;
La solution homogene stationnaire (u_eq,v_eq) :
> s :=solve({f(u,v,a)=0,g(u,v,b)=0 },{u,v}) ;
> u_eq :=(a,b)->a+b ;
> v_eq :=(a,b)->b/((a+b)^2) ;
La matrice jacobienne au point d’équilibre : (on la définit d’abord comme une liste de listes)
> AA :=(a,b,gamma,d,lambda)->[[gamma*D[1](f)(u_eq(a,b),v_eq(a,b),a,b) –lambda, gamma*D[2](f)(u_eq(a,b),v_eq(a,b),a,b)], [gamma*D[1](g)(u_eq(a,b),v_eq(a,b)),gamma *D[2](g)(u_eq(a,b),v_eq(a,b)-lambda*d]] ;
Pour obtenir une matrice on utilise convert
> A :=(a,b,gamma,d,lambda)->convert(AA(a,b,gamma,d,lambda ),matrix) ;
La valeur critique d_c est solution de l’equation quadratique
> q :=(a,b,d)->d^2*(D[1](f)(u_eq(a,b),a,b))^2+2*(2*D[2](f)(u_eq(a,b),v_eq(a,b),a,b)*D[1](g)(u_eq(a,b),v_eq(a,b))-D[1](f)(u_eq(a,b),v_eq(a,b),a,b)*D[2](g)(u_eq(a,b),v_eq(a,b)))*d+(D[2](g)(u_eq(a,b),v_eq(a,b)))^2 ;
> solve(q(0.25,0.75,d) ;
> eigenvects(A(0.25,0.75,8,20,(1 *Pi^2)/1)) ;
On choisit des valeurs des parameters a, b, gamma et d, puis on fait le graphe du determinant en function de lambda
> plot(det(A(0.25,0.75,8,20,lamb da)),lambda=0.4..2.5) ;
On trouve les valeurs pour les different modes sur un domaine rectangulaire
> tableau :=proc(m_min,m_max,n_min,n_max ,p,q)
local h,i,j,k ;
h :=i->[seq(evalf(Pi^2*(k^2/(p^2)+i^2/(q^2)),3),k=m_min..m_max)] ;
array([seq(h(j),j=n_min..n_max)]) ;
end :
> tableau(0,10,0,10,5,2) ;
Pour mieux comprendre, voici en PJ les equations en jeu.
Merci encore
-----