Съдържание:

Измерване на силовите промени на генерирана оптична мрежа, когато е изместена с външна сила: 8 стъпки
Измерване на силовите промени на генерирана оптична мрежа, когато е изместена с външна сила: 8 стъпки

Видео: Измерване на силовите промени на генерирана оптична мрежа, когато е изместена с външна сила: 8 стъпки

Видео: Измерване на силовите промени на генерирана оптична мрежа, когато е изместена с външна сила: 8 стъпки
Видео: Prüfungsvorbereitung B2/C1- "Let's Go" 2024, Ноември
Anonim
Измерване на силовите промени на генерирана оптична мрежа, когато е изместена с външна сила
Измерване на силовите промени на генерирана оптична мрежа, когато е изместена с външна сила

Клетките са в състояние да взаимодействат със заобикалящата ги извънклетъчна матрица (ECM) и могат както да прилагат, така и да реагират на силите, упражнявани от ECM. За нашия проект ние симулираме взаимосвързана мрежа от влакна, които биха действали като ECM и виждаме как мрежата се променя в отговор на движението на една от точките. ECM е моделиран като взаимосвързана система от пружини, които първоначално са в равновесие с нетна сила нула. Тъй като към мрежата се прилага сила в отговор на движението на точката, ние се опитваме да накараме свързаните точки да реагират на силата по такъв начин, че да се опитат да се върнат в равновесие. Силата се следи от уравнението F = k*x, където k е пружинната константа и x е промяната в дължината на влакното. Тази симулация може да помогне да се даде общо разбиране за разпространението на сила във влакнести мрежи, което в крайна сметка може да се използва за подпомагане на симулирането на механотрансдукция.

Стъпка 1: Генерирайте NxN матрица от равномерни квадрати

Генерирайте NxN матрица от равномерни квадрати
Генерирайте NxN матрица от равномерни квадрати
Генерирайте NxN матрица от равномерни квадрати
Генерирайте NxN матрица от равномерни квадрати

За да започнем кода, избираме N, което ще определи размерите на нашата мрежа (NxN). Стойността на N може да се променя ръчно, за да се променят мрежовите размери, ако е необходимо. В този пример N = 8, така че имаме 8x8 мрежа от точки. След като генерираме матрицата, свързваме всички точки в матрицата с дължина 1 единица, като използваме формулата за разстояние, разстояние = sqrt ((x2-x1)^2+(y2-y1)^2). По този начин получаваме мрежа от квадрати, които са еднакво раздалечени от 1 единица. Това може да се види на фигура 101.

Стъпка 2: Рандомизиране на мрежата

Рандомизиране на мрежата
Рандомизиране на мрежата
Рандомизиране на мрежата
Рандомизиране на мрежата

В тази стъпка искаме да рандомизираме всички местоположения на точки с изключение на външните точки, които ще образуват нашата граница. За да направим това, първо откриваме всички координати на матрицата, които са равни на 0 или N. Тези точки са тези, които съставляват границата. За неограничените точки местоположението се рандомизира чрез добавяне на различна случайна стойност от -5 до.5 както към позициите x и y. Начертаното рандомизирано изображение може да се види на Фигура 1.

Стъпка 3: Вземете нови разстояния

Вземете нови разстояния
Вземете нови разстояния

След като нашата рандомизирана мрежа е създадена, ние отново намираме разстоянието между свързани точки, като използваме формулата за разстояние.

Стъпка 4: Изберете точка и сравнете разстоянието от тази точка до други

Изберете точка и сравнете разстоянието от тази точка до другите
Изберете точка и сравнете разстоянието от тази точка до другите
Изберете точка и сравнете разстоянието от тази точка до другите
Изберете точка и сравнете разстоянието от тази точка до другите
Изберете точка и сравнете разстоянието от тази точка до другите
Изберете точка и сравнете разстоянието от тази точка до другите

В тази стъпка можем да изберем интересна точка с помощта на курсора, както е показано на фигура 2. Не е необходимо да премествате курсора си точно върху точката, защото кодът ще я настрои до най -близката точка на свързване. За да направите това, първо изчисляваме разстоянието между всички свързани точки и точката, която току -що избрахме. След като се изчислят всички разстояния, ние избираме точката с най -малкото разстояние от избраната точка, за да стане действително избраната точка.

Стъпка 5: Преместете се на нова точка

Преместете се на нова точка
Преместете се на нова точка
Преместете се на нова точка
Преместете се на нова точка
Преместете се на нова точка
Преместете се на нова точка

В тази стъпка, използвайки точката, избрана в предишната стъпка, преместваме точката на ново място. Това движение се извършва чрез избиране на нова позиция с курсора, която ще замени предишната позиция. Това движение ще се използва за симулиране на упражнена сила поради промяна в дължината на пружината. На изцяло синята фигура се избира ново място. На следващата фигура движението може да се визуализира чрез оранжевите връзки, които са новите места, за разлика от сините връзки, които бяха старите места.

Стъпка 6: Force = K*разстояние

Сила = K*разстояние
Сила = K*разстояние

В тази стъпка прилагаме уравнението сила = k*разстояние, където k е константа 10 за колагеновите влакна. Тъй като оптичната мрежа започва в равновесно състояние, нетната сила е 0. Създаваме нулев вектор дължината на матрицата, която генерирахме по -рано, за да представим това равновесие.

Стъпка 7: Променете движението на мрежата поради преместената точка

Променете движението на мрежата поради преместената точка
Променете движението на мрежата поради преместената точка
Променете движението на мрежата поради преместената точка
Променете движението на мрежата поради преместената точка
Променете движението на мрежата поради преместената точка
Променете движението на мрежата поради преместената точка
Променете движението на мрежата поради преместената точка
Променете движението на мрежата поради преместената точка

В тази стъпка ние симулираме движението на мрежата в отговор на движението на точката, за да се върнем към нейното равновесно състояние. Започваме с намирането на новите разстояния между две точки. С това можем да намерим промяната в дължината на влакната, като разгледаме разликата между старите и новите разстояния. Можем също така да видим кои точки са се преместили, както и точките, с които са свързани, като сравняваме новите и старите местоположения на точки. Това ни позволява да видим кои точки трябва да се движат в отговор на приложената сила. Посоката на движение може да бъде разбита на нейните x и y компоненти, давайки 2D вектор на посоката. Използвайки стойността k, промяната в разстоянието и вектора на посоката, можем да изчислим вектора на силата, който може да се използва за преместване на нашите точки към равновесие. Изпълняваме този раздел от кода 100 пъти, всеки път се движим на стъпки от Force*.1. Изпълнението на кода 100 пъти ни позволява в крайна сметка отново да достигнем равновесие и като поддържаме граничните условия, виждаме промяна в мрежата, вместо просто цяла смяна. Движението на мрежата може да се види на фигура 3, като жълтото е преместените позиции, а синьото - предишните.

Стъпка 8: Готов код

Приложено в този раздел е копие на нашия код. Чувствайте се свободни да го модифицирате според вашите нужди с моделиране на различни мрежи!

Препоръчано: