Y at-il API construit pour résoudre des problèmes mathématiques complexes comme l'intégration et la différenciation

StackOverflow https://stackoverflow.com/questions/3728507

  •  03-10-2019
  •  | 
  •  

Question

Je dois mettre en œuvre un algorithme qui a calcul mathématique intensive. Y at-il soutien déjà en java pour cela? Ou sont-il des fournisseurs 3ème partie qui fournissent ce soutien?

Était-ce utile?

La solution

JavaCalc pourrait être pertinente à vos besoins

  

Objectif
  L'objectif principal de ce projet est de développer une bibliothèque symbolique pour Java qui peut gérer des expressions algébriques régulières ainsi que des fonctions de calcul standard. Plus précisément, la bibliothèque devrait soutenir:

     

• expressions algébriques standards Parsing (arbre de syntaxe) d'une chaîne.
  • Simplifier les expressions algébriques (affacturage, dénominateur commun, identités trigonométriques, etc.).
  • L'application des fonctions de calcul standards symboliques (différenciation, intégration) aux expressions algébriques.
  • Outils de calcul communs (série Taylor, limites, approximations numériques).
  • Les outils graphiques (utilisant Swing).
  • Si le temps le permet, le soutien de l'équation différentielle (solveur symbolique, l'approximation d'Euler, transformée de Laplace).

Autres conseils

Il n'y a pas construit en fonctions que répondre à ces besoins, mais vous pouvez vérifier une bibliothèque comme commons-mathématiques

J'espère que cette aide.

Si vous avez une application web et que vous voulez une API REST par HTTP, consultez SaturnAPI. Vous pouvez écrire vos propres scripts Matlab et Octave et l'héberger là. Ensuite, à partir de votre application web, vous pouvez faire de simples requêtes HTTP POST avec des données d'entrée pour exécuter les scripts. Ensuite, vous pouvez récupérer les données de réponse HTTP que la sortie du script. ci-dessous est un exemple d'intégration vous pouvez bifurquer. Vous pouvez également rechercher des exemples Matlab et Octave en ligne qui répondent à vos besoins et l'utiliser sur SaturnAPI.

%%%%%%%%%%%%%%%%%%%%%%%%%% Integrating Differential Equations %%%%%%%%%%%%%%%%%%%%%%%%%%
% (GNU License)
% SaturnAPI has built-in functions for solving nonlinear differential equations of the form
%
%     dx
%     -- = f (x, t)
%     dt
%
% with the initial condition
%
%     x(t = t0) = x0
%
% For SaturnAPI to integrate equations of this form, 
% you must first provide a definition of the function f(x,t). 
% Do this by entering the function body directly in the API script. 
% The example script below defines the right-hand side function xdot
% for an interesting pair of nonlinear differential equations. 
% It computes the integral and prints the last term to be sent as the HTTP response data. 
% SaturnParams is an array containing the initial condition
% For instance, SaturnParams='[1 ; 2]'
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

function xdot = f (x, t)

  r = 0.25;
  k = 1.4;
  a = 1.5;
  b = 0.16;
  c = 0.9;
  d = 0.8;

  xdot(1) = r*x(1)*(1 - x(1)/k) - a*x(1)*x(2)/(1 + b*x(1));
  xdot(2) = c*a*x(1)*x(2)/(1 + b*x(1)) - d*x(2);

endfunction

x0 = SaturnParams;
t = linspace (0, 50, 200)';
x = lsode ("f", x0, t);

printf("%f", x(length(x)));

Divulgation: Je travaille sur SaturnAPI

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top