How to calculate residence time?

7 visualizzazioni (ultimi 30 giorni)
Akash Pandya
Akash Pandya il 19 Mar 2019
Risposto: Image Analyst il 19 Mar 2019
Hi,
I have a time column in picoseconds and 442 distance columns measured in nanometres. I know how to extract the time points that meet the distance threshold I have set.
x = xlsread('10_1.xlsx')
x = x(x(:,2)<=0.5,:);
I want to calculate the total residence time for each of the columns. How can I do this?
Akash
  2 Commenti
dpb
dpb il 19 Mar 2019
Dunno...what's the working definition of "residence time" here?
Akash Pandya
Akash Pandya il 19 Mar 2019
So the residence time refers to the time a small molecule is <=0.5 nanometers away from a protein. I want to find the total time where the distance (nm) meets this criteria.
Akash

Accedi per commentare.

Risposte (1)

Image Analyst
Image Analyst il 19 Mar 2019
Use regionprops() and ask for PixelIdxList. Then use PixelIdxList(end) - PixelIdxList(1) for each region found. Something like
props = regionprops(vec, 'PixelIdxList'); % Vec is a 1-d list of binary (boolean/logical) data of whether x is above 0.5 or not.
% Now find the delta time for all regions found in this vector, vec.
for k = 1 : length(props)
startingIndex = props(k).PixelIdxList(1);
endingIndex = props(k).PixelIdxList(end);
deltaTime(k) = x(endingIndex) - x(startingIndex); % x is the time vector
end
Attach '10_1.xlsx' if you need more help.

Prodotti


Release

R2018a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by