Opened 15 years ago

Last modified 14 years ago

#1216 closed defect (fixed)

Elaboration of function call in noDerivative annotation fails.

Reported by: Per Östlund Owned by: Per Östlund
Priority: critical Milestone:
Component: Version: 1.6.0
Keywords: Cc: Per Östlund, Per Östlund

Description

The model

function g 
  input Real x;
  output Real z;
algorithm
  z := x+1;
end g;

function f 
  input Real x;
  input Real y;
  output Real z;
  annotation(derivative(noDerivative(y=g(x)))=f_der);
algorithm
  z_der := x_der*cos(x);
end f;

function f_der
  input Real x;
  input Real y;
  input Real x_der;
  output Real z_der;
algorithm
  z_der := x+y+x_der;
end f_der;

model Derivative3
  Real x[3];
  Real u[3](each fixed=false);
  type IC=Real(start=0,fixed=true);
  IC ic[2]=x[1:2]-u[1:2];
equation
  x[1]=f(exp(time),g(exp(time)));
  der(x[1:2])=x[2:3];
  x[3]=u[3];
  der(u[1:2])=u[2:3];
end Derivative3;

gives failtrace:

- Static.elabCrefSubs failed on: prefix: <Prefix.NOPRE> cr: x env:
<global scope>
- Static.elabCrefSubs failed on: prefix: <Prefix.NOPRE> cr: x env:
<global scope>
- Static.elabCref failed: x in env: <global scope>
- Static.elabExp failed: x
    Scope: <global scope>
- Static.elabCrefSubs failed on: prefix: <Prefix.NOPRE> cr: x env:
<global scope>
- Static.elabCrefSubs failed on: prefix: <Prefix.NOPRE> cr: x env:
<global scope>
- Static.elabCref failed: x in env: <global scope>
- Static.elabExp failed: x
    Scope: <global scope>
- Static.elabTypes failed.
- Static.elabTypes failed.
- Static.elabCrefSubs failed on: prefix: <Prefix.NOPRE> cr: x env:
<global scope>
- Static.elabCrefSubs failed on: prefix: <Prefix.NOPRE> cr: x env:
<global scope>
- Static.elabCref failed: x in env: <global scope>
- Static.elabExp failed: x
    Scope: <global scope>
- Static.elabTypes failed.
- Static.elabTypes failed.
- Static.elabCallArgs failed on: g in env: <global scope>
- Static.elabCall failed
   function: g   posargs: x
- Static.elabExp failed: g(x)
    Scope: <global scope>

Change History (1)

comment:1 by Per Östlund, 15 years ago

Fixed in revision 5455.

Note: See TracTickets for help on using tickets.