1 namespace dscomponents{
47 this =
this@dscomponents.ACoreFun([]);
54 if ~isa(funPtr,
" function_handle ")
55 error(
" Argument funPtr must be a function handle. ");
56 elseif nargin(funPtr) ~= 3
57 error(
" funPtr nargin must equal three (= x,t,mu). ");
63 this.
fDim= size(funPtr(rand(xdim,1),0,rand(100,1)),1);
83 fx = this.target(x, t, this.
mu);
99 newfun = @(z,
t,
mu)W^t * this.target(V*z,t,
mu);
100 proj = dscomponents.PointerCoreFun(newfun, size(V,2));
115 copy = dscomponents.PointerCoreFun(this.target);
122 m = models.BaseFullModel;
123 fun = @(x,
t,
mu)x*3.*t;
124 m.System.x0= dscomponents.ConstInitialValue(1);
125 m.System.f= dscomponents.PointerCoreFun(fun,1);
static function test_PointerCoreFun()
integer fDim
The current output dimension of the function.
PointerCoreFun(function_handle funPtr, xdim,logical timedep)
Creates a new core function using the function pointer as inner function.
CustomProjection
Set this property if the projection process is customized by overriding the default project method...
logical TimeDependent
Flag that indicates if the ACoreFun is (truly) time-dependent.
A MatLab function handle.
Basic interface for all dynamical system's core functions Inherits the AProjectable interface...
integer xDim
The current state space dimension of the function's argument .
V
The matrix of the biorthogonal pair .
colvec< double > mu
The current model parameter mu for evaluations. Will not be persisted as only valid for runtime durin...
function proj = project(V, W)
Projects the core function into the reduced space. Creates a new PointerCoreFun and computes ...
Allows for core functions provided by function handles.
W
The matrix of the biorthogonal pair .
function fx = evaluateCoreFun(colvec< double > x,double t)
Evaluates the core function at x,t,mu.