2015-04-13 1 views
2

J'ai eu quelques problèmes pour comprendre comment la fonction loadwave (...) fonctionne exactement. J'ai donc trouvé un fichier avec sa description ici: /usr/share/scilab/modules/sound/macros/loadwave.sci en utilisant la commande find -name ....Scilab: où est le fichier source de la fonction optim situé

Maintenant, je ne comprends pas comment optim (...) la fonction fonctionne et donc je veux aussi trouver son fichier source, mais je ne peux pas (j'ai essayé d'utiliser des combinaisons de trouver et grep encore). Il y a quelques fichiers de démonstration avec des exemples d'utilisation optimale dans le répertoire/usr/share/scilab/modules/optimisation/demos/optim mais je ne trouve toujours pas de code source de optim (...) lui-même que si je comprends bien regarder en quelque sorte comme suit:

fonction [...] = optim (...)

...

fonction fin;

Pourriez-vous, si vous le souhaitez, me donner un conseil?

Mise à jour: pour l'instant je ne réussi à trouver ce fichier dans /usr/share/scilab/modules/optimization/sci_gateway/optimization_gateway.xml:

<!DOCTYPE GATEWAY SYSTEM "../../functions/xml/gateway.dtd"> 
<GATEWAY name="optimization"> 
<!-- =================== --> 
<!-- 
Scilab 
Interface description. In this file, we define the list of the function which 
will be available into Scilab and the link to the "native" function. 

gatewayId is the position in the hashtable 'Interfaces' defined in the 
file SCI/modules/core/src/c/callinterf.h 

primitiveId is the position in the hashtable '<module>Table Tab[]' defined 
in the file modules/<module>/sci_gateway/c/gw_<module>.c 

primitiveName is the name of the Scilab function 
=================== 
Don't touch if you do not know what you are doing 
--> 
<!-- =================== --> 

<PRIMITIVE gatewayId="11" primitiveId="1" primitiveName="optim" /> 
<PRIMITIVE gatewayId="11" primitiveId="2" primitiveName="semidef" /> 
<PRIMITIVE gatewayId="11" primitiveId="3" primitiveName="fsolve" /> 
<PRIMITIVE gatewayId="11" primitiveId="4" primitiveName="lsqrsolve" /> 
<PRIMITIVE gatewayId="11" primitiveId="5" primitiveName="qld" /> 
<PRIMITIVE gatewayId="11" primitiveId="6" primitiveName="qp_solve" /> 
<PRIMITIVE gatewayId="11" primitiveId="7" primitiveName="readmps" /> 
</GATEWAY> 

Ainsi, dans le git de Scilab le lien auquel on a bien voulu donner à moi par user1149326 ci-dessous j'ai trouvé le fichier Scilab/modules/optimisation/sci_gateway/c/sci_optim.c (http://gitweb.scilab.org/?p=scilab.git;a=blob;f=scilab/modules/optimization/sci_gateway/c/sci_optim.c;h=608f7dabe822fc6cfecb456e847f3b7373014322;hb=HEAD)

Répondre

2

Vous pouvez consulter toutes les sources Scilab au their git repository. Plus spécifiquement toutes les sources optim sont dans the optimization module. Voir le dossier src et macro. Vous pouvez lire sur la façon dont le module est organisé sur their wiki.

Je pense que les sources sont trop complexes pour vous donner un aperçu de la façon dont fonctionne optim. Au lieu de regarder les sources, je recommanderais a document by Scilab about the kinds of optimization, qui pourrait aussi donner l'information que vous cherchez.

+0

Merci pour les liens. Mais, malheureusement, je ne peux toujours pas trouver la définition optimale là. Peut-être, je comprends quelque chose de mal. – JenyaKh

+0

Ma réponse était un peu incomplète, donc je l'ai mis à jour – spoorcc

+0

Merci pour votre aide, je vais essayer d'explorer le document. J'espère que cela aidera. – JenyaKh