IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

La version 13.0 du langage Wolfram et de Mathematica est disponible, avec un total de 117 nouvelles fonctions,
De nouvelles idées pour rendre le système encore plus facile et plus fluide à utiliser

Le , par Bruno

91PARTAGES

31  0 
La société Wolfram Research a annoncé le 13 décembre la version 13 du langage Wolfram et de Mathematica. « Cela fait 207 jours, soit un peu plus de 6 mois, que nous avons lancé la version 12.3. Et j'ai le plaisir de vous annoncer aujourd’hui la disponibilité de la version 13.0 du langage Wolfram et de Mathematica », a déclaré Stephen Wolfram, fondateur et PDG de Wolfram Research, créateur de Mathematica et du langage Wolfram.

Cette fois, le langage arrive avec un nombre impressionnant de travaux et de recherche qui ont été réalisés. Non seulement un total de 117 fonctions entièrement nouvelles, mais aussi plusieurs centaines de fonctions mises à jour et améliorées, plusieurs milliers de corrections de bogues et de petites améliorations, et une foule de nouvelles idées pour rendre le système encore plus facile et plus fluide à utiliser. Ce résultat des travaux de recherche et développement est le fruit d'un travail acharné, il reflète également le succès des principes de conception fondamentaux du langage Wolfram.


Le langage Wolfram est un langage de calcul multiparadigme développé par la société Wolfram Research. Ce langage est utilisé pour le calcul symbolique, la programmation fonctionnelle et la programmation basée sur des règles et il peut utiliser des structures et des données arbitraires. C'est également le langage de programmation de Mathematica (programme de calcul symbolique mathématique) et du Wolfram Programming Cloud. Il est utilisé pour le calcul symbolique, la programmation fonctionnelle et la programmation basée sur des règles et il peut utiliser des structures et des données arbitraires.

Ce langage comprend des fonctions intégrées pour générer et exécuter des machines de Turing, créer des graphiques et du son, analyser des modèles 3D, des manipulations matricielles et résoudre des équations différentielles. Largement documenté, le Langage Wolfram possède des principes fondamentaux qui le différencient des autres langages de programmation : une base de connaissances intégrée, l'automatisation sous la forme de méta-algorithmes et de superfonctions, une compréhension du langage naturel intégrée. En 2019, les bibliothèques de Wolfram sont devenues compatibles avec le moteur de jeu Unity, donnant ainsi aux développeurs de jeux un accès aux fonctions de haut niveau du langage.

Chaque jour, chaque semaine, chaque mois, depuis un tiers de siècle, nous nous efforçons d'enrichir ce vaste cadre intégré qu'est Mathematica et le langage Wolfram. Aujourd'hui, nous pouvons constater les résultats de toutes ces idées, de tous ces projets et de tous ces travaux individuels : un rythme d'innovation régulier, qui se poursuit maintenant depuis plus d'un tiers de siècle :


Dans la version 1.0 du langage Wolfram et de Mathematica, il y avait un total de 554 fonctions. Pourtant, entre la version 12.0 et la version 13.0, l’équipe Wolfram Research a ajouté un total de 635 nouvelles fonctions (en plus des 702 fonctions qui ont été mises à jour et améliorées). L'éventail complet des nouveautés de la version 13 par rapport à la version 12 est très large et impressionnant. Nous présentons, ci-dessous, les nouveautés de la version 13.0 par rapport à la version 12.3.

Les intégrales

En 1988, l'une des caractéristiques de Mathematica 1.0 que les gens appréciaient le plus était la possibilité d'effectuer des intégrales de manière symbolique. Au fil des ans, l’équipe Wolfram Research a progressivement élargi l'éventail des intégrales réalisables. Et un tiers de siècle plus tard, dans la version 13.0, elle apporte des améliorations remarquables. Voici une intégrale qui ne pouvait pas être réalisée « en forme fermée » auparavant, mais qui peut l'être dans la version 13.0 :


Toute intégrale d'une fonction algébrique peut en principe être effectuée en fonction des objets généraux DifferentialRoot. Mais le plus grand défi algorithmique est d'obtenir une « réponse conviviale » en termes de fonctions familières. Il s'agit d'une activité délicate, où un petit changement dans un coefficient peut avoir un effet important sur les réductions possibles. Mais dans la version 13.0, il y a maintenant de nombreuses intégrales qui ne pouvaient auparavant être réalisées qu’avec des fonctions spéciales, mais qui donnent maintenant des résultats en fonctions élémentaires. Voici un exemple :


Dans la version 12.3, la même intégrale pouvait encore être réalisée, mais uniquement en termes d'intégrales elliptiques :


Fonctions mathématiques

À l'époque où l'on devait encore faire des intégrales et autres opérations de ce genre à la main, on était toujours ravi de découvrir que son problème pouvait être résolu grâce à une « fonction spéciale » exotique dont on n'avait jamais entendu parler auparavant. Les fonctions spéciales sont en quelque sorte un moyen d'emballer les connaissances mathématiques : une fois qu’on sait que la solution de l’équation est une fonction de Lamé, cela indique immédiatement beaucoup de détails mathématiques à son sujet.

Avec le langage Wolfram, l’équipe Wolfram Research considère les fonctions spéciales avec beaucoup de sérieux, non seulement en prenant en charge une vaste collection de ces fonctions, mais aussi en permettant de les évaluer avec n'importe quelle précision numérique et de les faire participer à une gamme complète d'opérations mathématiques.

« Lorsque j'ai commencé à utiliser les fonctions spéciales, il y a environ 45 ans, le livre qui constituait la référence standard était le Handbook of Mathematical Functions d'Abramowitz & Stegun (1964). Il répertoriait des centaines de fonctions, certaines largement utilisées, d'autres moins. Et au fil des années, dans le cadre du développement du langage Wolfram, nous avons régulièrement vérifié de nouvelles fonctions d'Abramowitz & Stegun », a déclaré Stephen Wolfram.

Dans la verion 13.0, de Mathematica, toutes les fonctions d'Abramowitz & Stegun sont désormais entièrement calculables dans le langage Wolfram. Les dernières fonctions ajoutées étaient les fonctions d'onde de Coulomb (pertinentes pour l'étude des processus de diffusion quantique).

Et voici, à partir de la version 13, comment obtenir cette première image dans le langage Wolfram.


L'histoire ne s'arrête pas là, comme on peut le voir maintenant :


Un autre type de nombre

On pourrait penser qu'un nombre n'est qu'un nombre. Et c'est fondamentalement vrai pour les nombres entiers. Mais lorsqu'un nombre est un nombre réel, l'histoire est plus compliquée. Parfois, il est possible de « nommer » un nombre réel de manière symbolique, par exemple. Mais la plupart des nombres réels n'ont pas de « nom symbolique ». Et pour les spécifier exactement, il faudrait donner un nombre infini de chiffres, ou l'équivalent. Le résultat est que l'on finit par vouloir avoir des nombres réels approximatifs que l'on peut considérer comme représentant certaines collections entières de nombres réels.Une façon de le faire est d'utiliser des nombres à précision finie, comme dans :


Une autre approche introduite dans la version 12.0 est celle de l'Around, qui représente en fait une distribution de nombres « répartis au hasard » autour d'un nombre donné :


Lorsqu’on effectue des opérations sur des nombres approximatifs, les « erreurs » sont combinées à l'aide d'un certain calcul d'erreurs qui est effectivement basé sur des distributions gaussiennes et les résultats obtenus sont toujours, dans un certain sens, statistiques. Dans le cas où le besoin d’utiliser des nombres approximatifs tout en obtenant des résultats vérifiables se présente ? L'une des approches consiste à utiliser Interval. Mais une approche plus rationnelle, désormais disponible dans la version 13.0, consiste à utiliser CenteredInterval. Voici un CenteredInterval utilisé comme entrée d'une fonction de Bessel :


Il est possible d'apporter la preuve dans le langage Wolfram de plusieurs manières. En utilisant Reduce, FindEquationalProof ou CenteredInterval qui, en fait, tirent parti de l'évaluation numérique. Comme dans chaque nouvelle version du langage Wolfram, la version 13.0 comporte de nombreuses améliorations en mathématique. Par exemple, un nouveau moyen pratique d'obtenir les pôles d'une fonction.


Et voici les pôles exacts (et leurs multiplicités) pour cette fonction dans le cercle unitaire :


Maintenant, il est possible d’additionner les résidus à ces pôles et utiliser le théorème de Cauchy pour obtenir une intégrale de contour. Toujours dans le domaine du calcul, l’équipe Wolfram Research a ajouté diverses commodités à la manipulation des équations différentielles. Grâce à son potentiel en matière de théorie des graphes, l'équipe a également été en mesure d'améliorer considérablement le traitement des Équations différentielles ordinaires (EDO), en trouvant des moyens de les « démêler » en formes bloc-diagonales qui nous permettent de trouver des solutions symboliques dans des cas beaucoup plus complexes qu'auparavant.

Pour les Équation différentielle partielle (EDP ), il n'est généralement pas possible d'obtenir des solutions générales « à forme fermée » pour les EDP non linéaires. Mais on peut parfois obtenir des solutions particulières connues sous le nom d'intégrales complètes (dans lesquelles il n'y a que des constantes arbitraires, et non des fonctions arbitraires « entières »). La version 13.0 de apporte une fonction explicite pour les trouver.


En passant du calcul à l'algèbre, l’équipe Wolfram Research a ajouté la fonction PolynomialSumOfSquaresList qui fournit une sorte de « certificat de positivité » pour un polynôme multivarié. L'idée est que si un polynôme peut être décomposé en une somme de carrés (et la plupart, mais pas tous, qui ne sont jamais négatifs le peuvent), cela prouve que le polynôme est effectivement toujours non négatif. En additionnant les carrés, on retrouve le polynôme d'origine. Dans la version 13.0, l’équipe Wolfram Research a également ajouté quelques nouvelles fonctions matricielles. Il y a Adjugate, qui est essentiellement un inverse de matrice, mais sans diviser par le déterminant. Et il y a DrazinInverse qui donne l'inverse de la partie non singulière d'une matrice, comme cela est particulièrement utilisé dans la résolution d'équations différentielles-algébriques.

Mécanique des solides et des structures

Les EDP sont à la fois difficiles à résoudre et difficiles à configurer pour des situations particulières. Au fil des ans, l’équipe Wolfram Research a développé des capacités de pointe en matière de résolution par éléments finis pour les EDP. Elle a également mis au point un système de géométrie informatique symbolique révolutionnaire qui permet de décrire de manière flexible des régions pour les EDP. Mais à partir de la version 12.2, l’équipe Wolfram Research a également apporté des améliorations : elle a commencé à créer des cadres de modélisation symbolique explicite pour des types particuliers de systèmes physiques qui peuvent être modélisés avec des EDP. Le transfert de chaleur étant déjà possible, ainsi que le transport de masse et l'acoustique. Maintenant, dans la version 13.0, l’équipe Wolfram Research ajoute la mécanique des solides et des structures.

La mécanique des solides est un domaine complexe, et la version 13 du langage Wolfram et de Mathematica offre une bonne technologie de niveau industriel pour le gérer. En fait, l’équipe Wolfram Research indique qu'elle possède une monographie entière intitulée Solid Mechanics Model Verification qui décrit comment elle valide les résultats de ses expériences. Elle fournit également une monographie générale sur la mécanique des solides qui décrit comment prendre des problèmes particuliers et les résoudre avec sa pile technologique.

Et vous ?

Avez-vous une expérience avec Mathematica ?

Que pensez-vous du langage Wolfram ?

Quelle nouveauté vous interesse le plus dans la version 13.0 ?

Voir aussi :

La version 12.0 de Mathematica (et du langage Wolfram) est disponible, elle est censée repousser les limites de ce qui peut être fait en mathématiques

Stephen Wolfram publie gratuitement le moteur Wolfram pour les développeurs, mais pas en open source

Wolfram Language et Mathematica v12.1 permettent de mieux se servir du machine learning, tandis que WolframScript permet au code Wolfram Language d'être exécuté à partir de n'importe quel terminal

Sortie de Mathematica 11, avec des réseaux neuronaux symboliques, la gestion de l'impression 3D et une interface retravaillée

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de steel-finger
Membre confirmé https://www.developpez.com
Le 19/12/2021 à 16:51
C'est quoi se raisonnement a deux balles, ce n'est pas open source donc c'est de la merde sérieux !..
9  1 
Avatar de walfrat
Membre émérite https://www.developpez.com
Le 20/12/2021 à 11:46
Citation Envoyé par jpouly Voir le message
C'est un langage fait pour les mathématiciens. Par pour les informaticiens .

Et l'open source n'est pas meilleur, cf. Log4J
C'est quoi ce raisonnement à deux balles ? Microsoft, il a pas ses failles 0-day aussi ?

Les failles de log4j n'ont rien avoir avec le monde de l'open source.

Le problème, c'est que pour un ingénieur, ça ne vaut pas le coup d'investir du temps et de l'énergie à apprendre une technologie qui n'est pas librement accessible.
Pas d'accord, ce qu'il ne vaut pas le coup d'investir du temps et de l'énergie c'est une technos pas adéquate que tu prend pour une mauvaise raison. C'est d'autant plus vrai pour un outil de type matématica, je serais peut-être capable de l'utiliser, mais clairement je serais incapable d'y mettre mon nez dans le code source.
5  0 
Avatar de esperanto
Membre émérite https://www.developpez.com
Le 20/12/2021 à 7:59
Citation Envoyé par abriotde Voir le message
C est un langage qui n est pas open source et donc pas utilisé. Ce langage n a aucun intérêt à part celui d enrichir une entreprise.
Une simple recherche Google nous apprend qu'il existe au moins deux alternatives open source, dont une qui utiliserait un langage à peu près compatible. Ne pas confondre le langage et son implémentation.

Citation Envoyé par Mingolito Voir le message
Poursuit ton raisonnement et arrête d'acheter de la nourriture qui est pas "open source", ca ne sert qu'à "enrichir" les agriculteurs
en l'occurence ça me gênerait d'apprendre que ce que j'ai dans mon assiette contient des OGM et que 80% du prix correspond au brevet. Tant que ce n'est pas le cas, je peux considérer ma nourriture comme "open source" parce que je pourrais très bien cultiver les mêmes semences moi-même sans me retrouver avec un procès pour plagiat sur le dos.
Payer les agriculteurs pour leur travail d'accord, payer une entreprise parce qu'elle est propriétaire du concept même de nourriture, j'espère qu'on en arrivera pas là.

Citation Envoyé par Mingolito Voir le message
J'espère que tu es cohérent avec toi même que tu travailles bénévolement à temps plein pour "l'open source", et que tu dors sous les ponts, et que tu va manger aux restaurants du cœur
Soyons sérieux, autant la position à laquelle tu réponds est extrême, autant si c'est pour faire la carricature dans l'autre sens c'est n'importe quoi.
L'open source ce n'est pas forcément du bénévolat, on ne vend pas de licences mais on peut se rattraper sur le service sans pour autant brider l'utilisateur. Ce n'est pas la fortune mais ça fonctionne. Mais peut-être que tu ne le savais pas?

Citation Envoyé par jpouly Voir le message
C'est un langage fait pour les mathématiciens. Par pour les informaticiens .
Et donc ça justifie que les universités doivent débourser plusieurs milliers d'euros par licence? Là encore, on ne répond pas à un mauvais argument par un qui l'est tout autant!

Citation Envoyé par jpouly Voir le message
Et l'open source n'est pas meilleur, cf. Log4J
Toujours le même cliché. Au moins la faille de LOG4J a pu être corrigée. Maintenant imagine que Mathematica contienne LOG4J (après tout la licence Apache ne l'interdit pas) et que tu n'arrives pas à faire la mise à jour toi-même, d'après toi il va faire quoi ton DSI?
3  0 
Avatar de
https://www.developpez.com
Le 20/12/2021 à 9:15
Citation Envoyé par abriotde Voir le message
C est un langage qui n est pas open source et donc pas utilisé. Ce langage n a aucun intérêt à part celui d enrichir une entreprise.
Il est clair que Wolfram Mathematica est assez peu utilisé dans l'industrie, son modèle économique n'étant pas étranger à cela. L'entreprise capitalise sur ses clients historiques : des universités et des banques principalement. Mais ses parts de marché restent modestes.

Le problème, c'est que pour un ingénieur, ça ne vaut pas le coup d'investir du temps et de l'énergie à apprendre une technologie qui n'est pas librement accessible.

Wolfram peut très bien garder les sources de son logiciel fermées, mais devrait a minima proposer une version community gratuite pour le faire connaître.
3  0 
Avatar de jpouly
Membre confirmé https://www.developpez.com
Le 19/12/2021 à 21:07
Citation Envoyé par abriotde Voir le message
C est un langage qui n est pas open source et donc pas utilisé. Ce langage n a aucun intérêt à part celui d enrichir une entreprise.
C'est un langage fait pour les mathématiciens. Par pour les informaticiens .

Et l'open source n'est pas meilleur, cf. Log4J
6  4 
Avatar de Mingolito
Membre extrêmement actif https://www.developpez.com
Le 19/12/2021 à 23:06
Citation Envoyé par abriotde Voir le message
C est un langage qui n est pas open source et donc pas utilisé. Ce langage n a aucun intérêt à part celui d enrichir une entreprise.
Poursuit ton raisonnement et arrête d'acheter de la nourriture qui est pas "open source", ca ne sert qu'à "enrichir" les agriculteurs

Et puis il y a une énorme différence entre être payé pour fournir un service et "s'enrichir", beaucoup d'entreprises dans la tech ne sont pas rentables, et ne font que des appels de fonds en cascade pour combler le déficit chronique, mais bon, essayer d'expliquer ça a un probable communiste extrémiste ignare qui ne comprends rien c'est mission impossible

J'espère que tu es cohérent avec toi même que tu travailles bénévolement à temps plein pour "l'open source", et que tu dors sous les ponts, et que tu va manger aux restaurants du cœur
3  3 
Avatar de jeanmarcperrier
Nouveau Candidat au Club https://www.developpez.com
Le 20/03/2022 à 0:47
Le logiciel calcule vite, mais on sait pas comment, ni ce que deviennent les données.
En plus coder avec ce langage devient vite une galère, une majuscule imposée à chaque mot clé/réservé, ben ça fait perdre un temps de fou.
Dommage.
Moi maintenant (et depuis près de 20 ans), j'utilise Scilab et SageMath. Moins jolis, moins "design", mais aussi efficaces, et surtout plus légers,
ouverts, code source dispo, adaptables, et l'intégration avec Python est facile.
En plus l'intégration d'interpréteur de langage naturel ne garanti pas une bonne interprétation par Mathematica des éléments de sens a traiter.
Quand on parle, qu'on écrit, chaque personne a sa propre compréhension de ce qui est transmis, et ça évolue avec le temps qui passe.
Là le moteur est figé, inaccessible (code fermé), et l'interprétation va dépendre des algorithmes conçus par les codeurs de Wolfram.
Je préfère créer un mauvais interpréteur qui reste ouvert, et que l'on peut critiquer, qu'un autre dont je ne sais rien. En plus vu le domaine
d'application, c'est tout sauf une bonne idée.
Un phylosophe grec rappelait ceci : "Il n'est qu'un pêché, l'ignorance, il n'est qu'un bienfait, le savoir". Et même si ce logiciel semble bien
fonctionner, moi j'y mets pas les doigts.
Rappel pour réfléchir : un agriculteur au canada a voici plusieurs années été attaqué en justice pour usage sans paiement de droits de licence
de graines et semences OGM. Alors qu'il n'en avait jamais ni acheté, ni semé lui-même une seule. Mais le vent a porté des semences de champs
voisins, d'un autre agriculteur qui lui en utilisait. Et bien Monsanto a gagné le procès. Alors que le paysan était la victime (il faisait du bio, et
réutilisait une partie de ses propres récoltes pour ressemer l'année suivante).
Pensez-y quand vous utiliser Mathematica, ou ses copains.
2  3 
Avatar de abriotde
Membre chevronné https://www.developpez.com
Le 19/12/2021 à 6:52
C est un langage qui n est pas open source et donc pas utilisé. Ce langage n a aucun intérêt à part celui d enrichir une entreprise.
1  14