Error in Cadet process tutorial: Exercise 1: Combine nonbinding tracer with binding components

I trying to learn CADET-Process through tutorials.

I got an error.

Input

from CADETProcess.processModel import ComponentSystem
from CADETProcess.processModel import Langmuir
from CADETProcess.processModel import Inlet, LumpedRateModelWithPores, Outlet
from CADETProcess.processModel import FlowSheet
from CADETProcess.processModel import Process

# Component System
component_system = ComponentSystem()
component_system.add_component('Dextran')
component_system.add_component('A')
component_system.add_component('B')

# Binding Model
binding_model = Langmuir(component_system, name='langmuir')
binding_model.is_kinetic = False
binding_model.adsorption_rate = [0, 0.02, 0.03]
binding_model.desorption_rate = [1, 1, 1]
binding_model.capacity = [100, 100, 100]

inlet = Inlet(component_system, 'inlet')
inlet.flow_rate = 2.88e-8

column = LumpedRateModelWithPores(component_system, 'column')
column.binding_model = binding_model
column.length = 0.1
column.diameter = 0.01
column.bed_porosity = 0.37
column.particle_radius = 4.5e-5
column.particle_porosity = 0.33
column.axial_dispersion = 2.0e-7
column.film_diffusion = [0, 1e-4, 1e-4]

outlet = Outlet(component_system, 'outlet')

flow_sheet = FlowSheet(component_system)
flow_sheet.add_unit(inlet)
flow_sheet.add_unit(column)
flow_sheet.add_unit(outlet)

flow_sheet.add_connection(inlet, column)
flow_sheet.add_connection(column, outlet)

process = Process(flow_sheet, 'dextran')
process.cycle_time = 1200

process.add_event('inject_on', 'flow_sheet.inlet.c', [1.0, 1.0, 1.0], 0)
process.add_event('inject_off', 'flow_sheet.inlet.c', [0.0, 0.0, 0.0], 50.0)

from CADETProcess.simulator import Cadet
simulator = Cadet()

simulation_results = simulator.simulate(process)

_ = simulation_results.solution.column.outlet.plot()

Output:

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
~\AppData\Local\Temp\1\ipykernel_18476\876603644.py in <module>
----> 1 from CADETProcess.processModel import ComponentSystem
      2 from CADETProcess.processModel import Langmuir
      3 from CADETProcess.processModel import Inlet, LumpedRateModelWithPores, Outlet
      4 from CADETProcess.processModel import FlowSheet
      5 from CADETProcess.processModel import Process

~\Anaconda3\lib\site-packages\CADETProcess\__init__.py in <module>
     25 from . import plotting
     26 from . import dynamicEvents
---> 27 from . import processModel
     28 from . import smoothing
     29 from . import solution

~\Anaconda3\lib\site-packages\CADETProcess\processModel\__init__.py in <module>
    121 from .flowSheet import *
    122 
--> 123 from . import process
    124 from .process import *
    125 

~\Anaconda3\lib\site-packages\CADETProcess\processModel\process.py in <module>
      5 from addict import Dict
      6 import numpy as np
----> 7 from scipy import integrate
      8 from scipy import interpolate
      9 

~\Anaconda3\lib\importlib\_bootstrap.py in _handle_fromlist(module, fromlist, import_, recursive)

~\Anaconda3\lib\site-packages\scipy\__init__.py in __getattr__(name)
    214     def __getattr__(name):
    215         if name in submodules:
--> 216             return _importlib.import_module(f'scipy.{name}')
    217         else:
    218             try:

~\Anaconda3\lib\importlib\__init__.py in import_module(name, package)
    125                 break
    126             level += 1
--> 127     return _bootstrap._gcd_import(name[level:], package, level)
    128 
    129 

~\Anaconda3\lib\site-packages\scipy\integrate\__init__.py in <module>
     90 
     91 
---> 92 from ._quadrature import *
     93 from ._odepack_py import *
     94 from ._quadpack_py import *

~\Anaconda3\lib\site-packages\scipy\integrate\_quadrature.py in <module>
      6 from collections import namedtuple
      7 
----> 8 from scipy.special import roots_legendre
      9 from scipy.special import gammaln, logsumexp
     10 from scipy._lib._util import _rng_spawn

~\Anaconda3\lib\site-packages\scipy\special\__init__.py in <module>
    770 from ._sf_error import SpecialFunctionWarning, SpecialFunctionError
    771 
--> 772 from . import _ufuncs
    773 from ._ufuncs import *
    774 

~\Anaconda3\lib\site-packages\scipy\special\_ufuncs.pyx in init scipy.special._ufuncs()

ValueError: numpy.ndarray size changed, may indicate binary incompatibility. Expected 96 from C header, got 88 from PyObject

Can someone please help me out in this.
Thanks

Hello Mohd,

that looks like a problem between scipy and numpy. A fresh python env (virtualenv or conda env) should solve this. We have a guide on good practices for that here. If that doesn’t help, let us know.

Best wishes,
Ron

Thanks @ronald.jaepel, it has been solved by upgrading Anaconda and reinstalling Cadet process.

1 Like