Affinity chromatography in CADET-Process

Reading this thread: Protein A affinity help and simulation error

It seems that the way to elution in affinity chromatography is to have the parameters of the binding model altered during elution. How can I model this in CADET-Process?

External functions are not yet supported in CADET-Process (see here).

1 Like

We have had good results with the pH-dependent colloidal isotherm that @soumi , @a.moser , and myself have worked with. I only have scripts for it in MATLAB form but they may be able to share python code. @Flynn also implemented a novel isotherm for proteinA that is available in some version of CADET. If you use either of these, you would not need to use external functions.

1 Like

That is correct, and @Ronan1234 I would be happy to discuss this with you or share code if you like. I have set up protein A models using the general rate model and the colloidal isotherm in both CADET (python) and CADET-process. I have added the colloidal isotherm and the [H+] concentration dependence for surface diffusivity to CADET-process for my own use, but it’s not part of the main version that’s available (yet).

Some notes on modeling protein A step elution:

Consistent with what @soumi showed in this paper, I have found that surface diffusivity is strongly dependent on [H+] concentration for protein A and is important for modeling protein A step elution. Additionally, it seems that it is also difficult to model protein A step elution without accounting for pH transients that can occur due to titration of the ligand and/or base matrix, though how important this is may be dependent on specific process conditions.

In short, having pH (or [H+]) dependent binding model parameters is necessary to model protein A elution, but it is only one piece of the puzzle.

2 Likes

Thank you for your response. Yes if you could share some code, that would be perfect!

Thanks for tagging me. Yes, I do have some MATLAB codes that I can share. Angela and @a4arjunvp have been taking the lead on python. :slight_smile:

Dear @soumi and @alter

Can you guys share the colloidal isotherm model code. If it is not in python script, you can share in MATLAB script. I am eagerly searching this code.

Any help is appreciated

Shyama

Hi Shyama,

@Daniel / @a4arjunvp should have the latest UDelaware versions.

Here is some relatively older MATLAB code (a function, and two different scripts, one to fit and one to predict). It should have the CADET inputs set up. I’ve invluded some sample data as well.

Thanks!
Soumi

Script_Predict_ColloidalLogEL.m (3.7 KB)
Script_SingleRun_ColloidalLogEL.m (3.9 KB)
formatted_1_MAbModel_MATLAB_NewCol_30MAR21_pH_0400 001.csv (483.8 KB)
ColloidalmodelEL_Rev_01.m (9.9 KB)
that I used.

Hi Soumi,

Thank you so much for sharing your code.

@Daniel and @a4arjunvp can you share latest versions of Colloidal isotherm model code.

Regards

Shyama

Here is my code, right now the code is adjusted for HIC but can very easily be adapted to ProA. I have included isotherm parameters from Soumi’s thesis. Also I am using a dev version of cadet process, not sure if the current release has the colloidal model yet.
fork: GitHub - angelamoser1/CADET-Process at add_GRM_surface_diffusion_dependence
If you need help on how to install it: A Guide to Reproducible Python Environments and CADET Installations - #8 by ronald.jaepel
post: " Installing a Custom Version of a Package From a Git Branch or Commit"

Best,
Daniel

Hi Daniel,

Thanks a lot for sharing the code. I have run the code in this dev branch for Protein, fork: GitHub - angelamoser1/CADET-Process at add_GRM_surface_diffusion_dependence. But getting an error: CADET Error: Simulation failed with b’IO ERROR: Field “COL_RADIUS” does not exist in group.

Please help to resolve the error.

Regards

Shyama

Hi Shyama,

That’s due to the change in the name of the variable from COL_RADIUS to COL_PROTEIN_RADIUS from CADET v4.4 to v5.0 that Ron mentioned here. The variable name in the CADET-Process branch is consistent with v5.0, COL_PROTEIN_RADIUS. You’d either need to upgrade CADET and be mindful of the kappa unit change, or go into the cadetAdapter file in CADET-Process and change the variable name back to COL_RADIUS to work with v4.4.

3 Likes