Skip to content

[CVLS ERROR] CVodeSetJacFn Linear solver memory is NULL. #139

@Immudzen

Description

@Immudzen

I am using scikits.odes 2.6.4 installed from conda-forge

ode_solver = scikits.odes.ode('cvode', self.rhs,
atol = 1e-8,
rtol = 1e-6,
old_api = False,
max_steps = 20000,
linsolver = 'dense',
lmm_type = 'ADAMS',
nonlinsolver = 'fixedpoint',
one_step_compute=True,
jacfn=self.jac)

and

def jac(self, t, y, f, J):
"computer the jacobian"
def wrap(x):
return self.function(t, x, self.current_feeds, jacobian=True)
J[:] = scipy.optimize.approx_fprime(y, wrap)

and I get [CVLS ERROR] CVodeSetJacFn Linear solver memory is NULL. every time before my jac function is called

the entire integration seems to work fine. My function is called the Jacobian is set, J is the right shape when that function is called.

Any idea what is causing that error and how can I fix it?

Part of the reason I am doing this in the first place was I needed to debug the system and see what the approximate jacobian was and I also wanted to be able to tell apart calls to my function to approximate the jacobian and normal calls.

I don't think the issue is in the jac function since the error occurs before it is called.

Further information: If I changed fixedpoint to newton the error message goes away

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions