selectbyname

Выберите данные моделирования по имени из SimData объект

Описание

пример

[t,x,names] = selectbyname(simdata,selectNames) возвращает время симуляции точек t, данные моделирования x, и соответствующие names для состояний, заданных selectNames.

пример

sdOut = selectbyname(simdata,selectNames) возвращает результаты симуляции состояний, заданных как selectNames как SimData sdOut объекта.

пример

___ = selectbyname(simdata,selectNames,'Format',formatValue) возвращает данные моделирования в заданном формате данных.

Примеры

свернуть все

Загрузите модель глюкозо-инсулиновой реакции. Для получения дополнительной информации о модели смотрите раздел «Фон» в Симуляции ответа глюкозы-инсулина.

sbioloadproject('insulindemo.sbproj','m1');

Подавить предупреждение об информации, выдаваемое во время симуляций.

warnSettings = warning('off', 'SimBiology:DimAnalysisNotDone_MatlabFcn_Dimensionless');

Симулируйте одноразовый прием пищи для нормального субъекта в течение 7 часов.

singleMeal = sbioselect(m1,'Name','Single Meal');
cs = getconfigset(m1,'active');
cs.StopTime = 7;
sd = sbiosimulate(m1,singleMeal)
 
   SimBiology Simulation Data
 
   ModelName:        Cobelli's Glucose-Insulin System
   Logged Data:
     Species:        15
     Compartment:    0
     Parameter:      24
     Sensitivity:    0
     Observable:     0
 
sbioplot(sd);

Figure contains an axes. The axes with title States versus Time contains 39 objects of type line. These objects represent Glucose appearance.Dose, Glucose appearance.Stomach Glu Solid, Glucose appearance.Stomach Glu Tritur, Glucose appearance.Stomach Glu, Glucose appearance.Gut Glu, Glucose appearance.Plasma Glu, Glucose appearance.Plasma Glu Conc, Glucose appearance.Tissue Glu, Insulin secretion.Interstitial Ins, Insulin secretion.Portal Ins, Insulin secretion.Liver Ins, Insulin secretion.Plasma Ins, Insulin secretion.Plasma Ins Conc, Insulin secretion.Ins Delay 1, Insulin secretion.Ins Delay 2, Stomach Glu After Dosing, a, c, kempt, kgri, Glu Appear Rate, Glu Prod, Plasma Glu Conc Rate, Ins Dep Glu Util, Glu Util, Glu Excretion, Glu Excretion Mode, Vm, Vmx, beta, Delayed Glu Signal, Delayed Glu Signal Mode, Ins Prod, Ins Prod Mode, Ins Secr, Basal Ins Secr, m3, Hepatic Extraction, Basal Glu Prod.

Выберите все данные видов, зарегистрированные в SimData объект sd.

[t,x,names] = select(sd,{'Type','species'});
names
names = 15x1 cell
    {'Glucose appearance.Dose'              }
    {'Glucose appearance.Stomach Glu Solid' }
    {'Glucose appearance.Stomach Glu Tritur'}
    {'Glucose appearance.Stomach Glu'       }
    {'Glucose appearance.Gut Glu'           }
    {'Glucose appearance.Plasma Glu'        }
    {'Glucose appearance.Plasma Glu Conc'   }
    {'Glucose appearance.Tissue Glu'        }
    {'Insulin secretion.Interstitial Ins'   }
    {'Insulin secretion.Portal Ins'         }
    {'Insulin secretion.Liver Ins'          }
    {'Insulin secretion.Plasma Ins'         }
    {'Insulin secretion.Plasma Ins Conc'    }
    {'Insulin secretion.Ins Delay 1'        }
    {'Insulin secretion.Ins Delay 2'        }

Постройте графики данных для скорости глюкозы при использовании внешних видов и глюкозы, а именно Glu Product Rate и Glu Util.

newsd = select(sd,{'Type','parameter','name',{'Glu Appear Rate'; 'Glu Util'}})
 
   SimBiology Simulation Data
 
   ModelName:        Cobelli's Glucose-Insulin System
   Logged Data:
     Species:        0
     Compartment:    0
     Parameter:      2
     Sensitivity:    0
     Observable:     0
 
sbioplot(newsd);

Figure contains an axes. The axes with title States versus Time contains 2 objects of type line. These objects represent Glu Appear Rate, Glu Util.

Сравните данные для концентрации глюкозы в плазме (вид, названный Plasma Glu Conc) и скорость секреции инсулина (параметр с именем Ins Secr). Использование selectbyname для извлечения данных путем определения соответствующих имен.

newsd2 = selectbyname(sd,{'Plasma Glu Conc','Ins Secr'})
 
   SimBiology Simulation Data
 
   ModelName:        Cobelli's Glucose-Insulin System
   Logged Data:
     Species:        1
     Compartment:    0
     Parameter:      1
     Sensitivity:    0
     Observable:     0
 
sbioplot(newsd2);

Figure contains an axes. The axes with title States versus Time contains 2 objects of type line. These objects represent Plasma Glu Conc, Ins Secr.

Выберите данные для всех видов и параметров, которые имеют Glu в своих именах.

newsd3 = select(sd,{'Where','Name','regexp','Glu'})
 
   SimBiology Simulation Data
 
   ModelName:        Cobelli's Glucose-Insulin System
   Logged Data:
     Species:        7
     Compartment:    0
     Parameter:      11
     Sensitivity:    0
     Observable:     0
 
newsd3.DataNames
ans = 18x1 cell
    {'Stomach Glu Solid'       }
    {'Stomach Glu Tritur'      }
    {'Stomach Glu'             }
    {'Gut Glu'                 }
    {'Plasma Glu'              }
    {'Plasma Glu Conc'         }
    {'Tissue Glu'              }
    {'Stomach Glu After Dosing'}
    {'Glu Appear Rate'         }
    {'Glu Prod'                }
    {'Plasma Glu Conc Rate'    }
    {'Ins Dep Glu Util'        }
    {'Glu Util'                }
    {'Glu Excretion'           }
    {'Glu Excretion Mode'      }
    {'Delayed Glu Signal'      }
    {'Delayed Glu Signal Mode' }
    {'Basal Glu Prod'          }

Можно также вернуть выбранные данные в качестве структуры.

sdStruct = select(sd,{'Where','Name','regexp','Glu'},'Format','struct');

Восстановите параметры предупреждения.

warning(warnSettings);

Входные параметры

свернуть все

Данные моделирования, заданные как SimData объект или массив SimData объекты.

Имена состояний, для которых необходимо выбрать данные, заданные как вектор символов, строка, строковый вектор или массив ячеек векторов символов.

Пример: {'x1','x2','x3'}

Типы данных: char | string | cell

Формат данных моделирования, заданный как вектор символов или строка. Некоторые форматы требуют, чтобы вы задали только один выходной аргумент. Следуйте допустимым форматам.

  • 'num' - Этот формат возвращает временные точки симуляции и данные моделирования в числовых массивах и имена величин и чувствительности как массив ячеек. Этот формат используется по умолчанию при запуске getdata с несколькими выходными аргументами.

  • 'nummetadata' - Этот формат возвращает массив ячеек из структур метаданных вместо имен величин и чувствительности в качестве третьего выходного аргумента.

  • 'numqualnames' - Этот формат возвращает квалифицированные имена в третьем выходном аргументе для устранения неоднозначностей.

Необходимо задать только один выходной аргумент для следующих форматов.

  • 'simdata' - Этот формат возвращает данные в новом SimData объект или массив SimData объекты. Этот формат является форматом по умолчанию, когда вы задаете один выходной аргумент.

  • 'struct' - Этот формат возвращает структуру или массив структур, который содержит как данные, так и метаданные.

  • 'ts' - Этот формат возвращает данные как массив ячеек.

    • Если simdata скаляром, массив ячеек является массивом m -by-1, где каждый элемент является timeseries объект. m - количество величин и чувствительности, регистрируемых во время симуляции.

    • Если simdata не скаляром, массив ячеек k -by-1, где каждый элемент массива ячеек является массивом ячеек m by-1 timeseries объекты. k - размер simdata, и m количество величин или чувствительности в каждой SimData объект в simdata. Другими словами, функция возвращает отдельные временные ряды для каждого состояния или столбца и для каждого SimData объект в simdata.

  • 'tslumped' - Этот формат возвращает данные как массив ячеек timeseries объекты, объединяющие данные из каждого SimData объект в один временные ряды.

Выходные аргументы

свернуть все

Время симуляции точек, возвращенная как числовой вектор или массив ячеек. Если simdata скаляром, t - вектор n -by-1, где n - количество временных точек. Если simdata - массив объектов, t - массив ячеек k -by-1, где k - размер simdata.

Данные моделирования, возвращенные как числовая матрица или массив ячеек. Если simdata скаляром, x - n матрица m, где n - количество временных точек, а m - количество величин и чувствительности, записанных во время симуляции. Если simdata - массив объектов, x - массив ячеек k -by-1, где k - размер simdata.

Имена величин и чувствительности, регистрируемые во время симуляции, возвращаются как массив ячеек. Если simdata скаляром, names - массив ячеек m -by-1. Если simdata - массив объектов, names - массив ячеек k -by-1, где k - размер simdata.

Результаты симуляции, возвращенные как SimData объект.

См. также

| |

Введенный в R2007b