external
objeto Scilab, função ou rotina externa
Descrição
Função ou rotina externa para uso com comandos específicos.
Uma "external" é uma função ou rotina que é usada como argumento em
algumas primitivas de alto nível (tais como ode
,
optim
, schur
...).
A seqüência de chamamento da "external" (função ou rotina) é imposta pela primitiva de alto nível que configura os argumentos da external.
Por exemplo, a função externa costfunc é um argumento da primitiva
optim . Sua seqüência de chamamento deve ser:
[f,g,ind]=costfunc(x,ind)
e optim
(a
primitiva de otimização de alto nível) é invocada como segue:
optim(costfunc,...)
Aqui costfunc
(a função de custo a ser minimizada
pela primitiva optim
) avalia f=f(x)
e g=
gradiente de f
em
x
(ind
é um inteiro. Seu uso é
esclarecido na ajuda de optim
).
Se a função externa necessita de outros valores, estas variáveis podem ser definidas em seu ambiente. Elas também podem ser colocadas em uma lista. Por exemplo, a função externa
[f,g,ind] = costfunc(x,ind,a,b,c)
é válida para optim
se o external (função
externa) é list(costfunc,a,b,c)
e a chamada a
optim
é, então:
Um external também pode ser uma rotina FORTRAN ou C: isto é conveniente para acelerar computações.
TO nome da rotina é fornecido para a primitiva de alto nível como um string. A seqüência de chamamento da rotina também é imposta.
Rotinas FORTRAN ou C podem ser dinamicamente linkadas ("ligadas,
conectadas") (ver link
)
Ver Também
Report an issue | ||
<< clearfun | Built-in & external | funptr >> |