Main Content

Results for

Tomorrow (Wednesday, January 23) during Rosa's Impact of Modeling & Simulation in Drug Development webinar series, Chi-Chung Li, a Senior Scientist at Genentech, will present a case study where SimBiology was used to create a QSP model that enhanced decision making in a Phase I trial.

Sign up now and have the ability to ask questions at the end of the webinar, or access the archived version later: https://www.rosaandco.com/webinars/2019/phase-i-clinical-decision-making-qsp-case-study

Iraj Hosseini, Ph.D., of Genentech will present a webinar on gPKPDSim , a MATLAB app that facilitates non-modelers to explore and simulate PKPD models built in SimBiology.

While model development typically requires mathematical modeling expertise, model exploration and simulation could be performed by non-modeler scientists to support experimental studies. Dr. Hosseini and his colleagues collaborate with MathWorks' consulting services to develop an App to enable easy use of any model constructed in SimBiology to execute common PKPD analyses.

Webinar will be hosted by Rosa & Co. on Wednesday October 24. To register, go to: https://register.gotowebinar.com/register/7922912955745684993?mw

This project presents a SimBiology implementation of Mager and Jusko’s generic Target-Mediated Drug Disposition model (TMDD) as described in "General pharmacokinetic model for drugs exhibiting target-mediated drug disposition". Target-mediated drug disposition is a common source of nonlinearity in PK profiles for biotherapeutics. Nonlinearities are introduced because drug-target bindings saturate at therapeutic dosing levels.

Drug in the Plasma reversibly binds with the unbound Target to form drug-target Complex. kon and koff are the association and dissociation rate constants, and clearance of free Drug and Complex from the Plasma is described by first-order processes with rate constants, kel and km, respectively. Free target turnover is described by a zero-order synthesis rate, ksyn, and a first order elimination (rate constant, kdeg). The model also includes an optional Tissue compartment to account for non-specific tissue binding or distribution.

References [1] Mager DE and Jusko WJ (2001) General pharmacokinetic model for drugs exhibiting target-mediated drug disposition. J Pharmacokinetics and Pharmacodynamics 28: 507–532.

This project presents SimBiology model implementation of the systemic Renin-Angiotensin-System that was first developed by Lo et al. and used to investigate the effects of different RAS-modulating therapies. The RAS pathway is crucial for blood pressure and kidney function control as well as a range of other organism-wide functions. The model describes the enzymatic conversion of the precursor protein Angiotensinogen to Angiotensin I and its downstream products Angiotensin 1-7, Angiotensin II and Angiotensin IV. Key pathway effects are triggered by the association of Angiotensin II with the AT1-Receptor. A positive feedback loop connects the Angiotensin II–AT1-Receptor complex with the Angiotensinogen conversion (not shown in the diagram). Enzymatic reactions are modeled as pseudo-unimolecular using enzymatic activities as reaction rates. Degradation reactions are described using protein half-life times. Drug pharmacodynamics are included in the model using the term (1-DrugEffect), where DrugEffect follows a sigmoidal dependence on the Drug concentration, to modify the target enzyme activity.

References [1] Lo, A., Beh, J., Leon, H. D., Hallow, M. K., Ramakrishna, R., Rodrigo, M., & Sarkar, A. (2011). Using a Systems Biology Approach to Explore Hypotheses Underlying Clinical Diversity of the Renin Angiotensin System and the Response to Antihypertensive Therapies. Clinical Trial Simulations, 1, 457–482.

This project presents a SimBiology implementation of a physiologically-based pharmacokinetic (PBPK) model for trichloroethylene (TCE) and its metabolites. It is based on the article, “A human physiologically based pharmacokinetic model for trichloroethylene and its metabolites, trichloroacetic acid and free trichloroethanol” by Fisher et al. [1].

The human PBPK model for TCE and its metabolites presented here was developed by Fisher et al. [1] in order to assess human health risks associated with low level exposure to TCE. TCE is a commonly used solvent in the automotive and metal industries for vapor degreasing of metal parts. Exposure to TCE has been associated with toxic responses such as cancer formation and brain disorders in rodents and in humans [1]. In this PBPK model, TCE enters the systemic circulation through inhalation. Its disposition is described by a six-compartment model representing the liver, lung, kidney, fat, and slowly perfused and rapidly perfused tissues. In the liver, TCE is metabolized to trichloroacetic acid (TCA) and free trichloroethanol (TCOH-f) via P450-mediated metabolism where a fraction of TCOH-f is converted to TCA. For simplicity, a four-compartment submodel was used to describe the disposition of metabolites, TCA and TCOH-f, in the lung, liver, kidney, and body (muscle). Both metabolites are described to be excreted in the urine. TCOH-f is glucuronidated in the liver, forming glucuronide-bound TCOH (TCOH-b), and excreted in the urine via a saturable process whereas TCA is excreted by a first-order process by the kidney.

Reference: Fisher, J. W., Mahle, D., & Abbas, R. (1998). A human physiologically based pharmacokinetic model for trichloroethylene and its metabolites, trichloroacetic acid and free trichloroethanol. Toxicology and applied pharmacology, 152(2), 339-359.

I wrote a Cody problem, but I want to prevent people from using tricks to get a false "best" solution.
For example, many people do something like the following:
regexp '' '(?@"CODE HERE)';
in order to get the size of their program down to something quite small. I want to prevent this. I have seen people using some weird tests to try to block this, but I don't know how they work and when I try to copy them they fail.
Would it make sense that, in order to enhance coding experience with practice exercises, each section of the Matlab Academy courses reference specific CODY problems related to that section so the CODY problems can be used in parallel with the structure of the Matlab Academy courses?
I started with Cody today and I found the file calculateSize.m https://de.mathworks.com/matlabcentral/fileexchange/34754-calculate-size which should determine the size of my solution. Unfortunately I do not get it to run. Can someone explain this to me or maybe explain how exactly the size of the solution is calculated?
Summary:
Dynamically accessing variable names can negatively impact the readability of your code and can cause it to run slower by preventing MATLAB from optimizing it as well as it could if you used alternate techniques. The most common alternative is to use simple and efficient indexing.
Explanation:
Sometimes beginners (and some self-taught professors) think it would be a good idea to dynamically create or access variable names, the variables are often named something like these:
  • matrix1, matrix2, matrix3, matrix4, ...
  • test_20kmh, test_50kmh, test_80kmh, ...
  • nameA, nameB, nameC, nameD,...
Good reasons why dynamic variable names should be avoided:
There are much better alternatives to accessing dynamic variable names:
Note that avoiding eval (and assignin, etc.) is not some esoteric MATLAB restriction, it also applies to many other programming languages as well:
MATLAB Documentation:
If you are not interested in reading the answers below then at least read MATLAB's own documentation on this topic Alternatives to the eval Function, which states "A frequent use of the eval function is to create sets of variables such as A1, A2, ..., An, but this approach does not use the array processing power of MATLAB and is not recommended. The preferred method is to store related data in a single array." Data in a single array can be accessed very efficiently using indexing.
Note that all of these problems and disadvantages also apply to functions load (without an output variable), assignin, evalin, and evalc, and the MATLAB documentation explicitly recommends to "Avoid functions such as eval, evalc, evalin, and feval(fname)".
The official MATLAB blogs explain why eval should be avoided, the better alternatives to eval, and clearly recommend against magically creating variables. Using eval comes out at position number one on this list of Top 10 MATLAB Code Practices That Make Me Cry. Experienced MATLAB users recommend avoiding using eval for trivial code, and have written extensively on this topic.
Something seems to either have changed with webread/urlread behavior with R2016a or the Cody site has changed its authentication after it's September 2016 upgrade. Now, when ever I make a call using either webread (with weboptions) urlread using "My Cody" url, I get the html that corresponds to an unauthenticated user.
I've tried passing credentials using weboption and also cached the credentials using the built in Matlab browser - neither helped in seeing the authenticated version of this page.
Any help in understanding where the problem/solution lies would be helpful. Easily reproduced by running...
URL = 'https://www.mathworks.com/matlabcentral/cody/players/1261697-gregory/solved';
[Contents Status] = urlread(URL);
Compare this to the source pulled down when authenticated with Chrome (for example, search for the work "two"). FYI: this has worked for a couple of years up until now...
Inspired by Chad Greene's " MATLAB jokes or puns " thread, and in celebration of 15 years of the MathWorks Community site, does anyone out there want to share their poetic creativity? Limericks, haiku, sonnets... Go!
And to start off, my (slightly off-topic) submission on Chad's thread:
There was an old math guy called Cleve
who, while teaching, a pipe-dream conceived:
of a language so clean
you can say what you mean!
From our suffering we've all been relieved.
O45
O45
Last activity on 23 Oct 2018

Hi, I am uploading the answers to cody problems. Although most of answers are correct but my size is bigger than the best answer. How can I view the best answer?
The community is very helpful, yet I feel really powerless that I cannot find the appropriate way to code, nor find the problems with the codes I have written. I have read numerous books on MATLAB, mostly related with science and engineering applications. Any advice to improve would be greatly appreciated. Thanks.

Apologies for putting this question here, but I'm not sure there's a specific forum for Cody-related questions.

I recently noticed that a new badge for "Magic Numbers Master" had been created and awarded. When I entered my profile to check that out, I noticed that I had received that badge, but lost the badge for "Cody Challenge Master." I thought that maybe my solution had been messed up because of a change in one of the test suites that my solution missed, as this has happened a number of times on other problems. According to the text underneath the badge icon, I've still solved all 96 of the questions in the Cody Challenge. All of the problems listed as part of that challenge are still marked as "Solved." Has anyone else run into this issue?

Chad Greene
Chad Greene
Last activity on 12 Sep 2023

Are there any good Matlab jokes? I don't mean why or any other Easter eggs, I mean good jokes involving Matlab. Actually, that bar may be a bit too high. Any jokes, good or bad, let's hear 'em.
I created a solution for Cody Problem 1745 (Get me!) that is very simple and works perfectly on my computer; but in Cody, it results in the error:
Error: Undefined function or variable 'me'.
The test code is:
get = me();
y = rand(1,12345);
!rm now.m
!rm assert.m
assert(get == now)
My solution is:
classdef me
methods
function tf = eq(obj,~)
tf = true;
end
end
end
Why doesn't Cody accept this?
(P. S.) And why doesn't it accept function definitions like
function justDoIt
(which are appropriate for some problems and accepted by MATLAB) but requires at least one input and output?
Can anyone explain how Cody calculates the size of a program?
I read the help, but couldn't understand. :(
Why cody does not allow 'eval', 'evalc','feval' etc functions in the solutions? What is alternative to these functions?
e.g. I need to use:
if f='3*x'
x=0:10;
y=eval(vectorise(f))
so that values of y can be calculated as 3.*x
bt cody does not let us to use functions like eval
What is the alternative?