Indholdsfortegnelse:

Måling af kraftændringer i et genereret fibernetværk, når de forskydes med ekstern kraft: 8 trin
Måling af kraftændringer i et genereret fibernetværk, når de forskydes med ekstern kraft: 8 trin

Video: Måling af kraftændringer i et genereret fibernetværk, når de forskydes med ekstern kraft: 8 trin

Video: Måling af kraftændringer i et genereret fibernetværk, når de forskydes med ekstern kraft: 8 trin
Video: Fysik: Arbejde og kinetisk, potentiel og mekanisk energi (repetition) 2024, November
Anonim
Måling af kraftændringer i et genereret fibernetværk, når de forskydes med ekstern kraft
Måling af kraftændringer i et genereret fibernetværk, når de forskydes med ekstern kraft

Celler er i stand til at interagere med deres omgivende ekstracellulære matrix (ECM) og kan både anvende og reagere på kræfter, der udøves af ECM. Til vores projekt simulerer vi et sammenkoblet netværk af fibre, der ville fungere som ECM og se, hvordan netværket ændrer sig som reaktion på bevægelse af et af punkterne. ECM er modelleret som et sammenkoblet system af fjedre, der oprindeligt er i ligevægt med en nettokraft på nul. Når kraft påføres netværket som reaktion på punktbevægelsen, forsøger vi at få de forbundne punkter til at reagere på kraften på en sådan måde, at de forsøger at vende tilbage til ligevægt. Kraften overvåges af ligningen F = k*x hvor k er fjederkonstanten og x er ændringen i fiberlængde. Denne simulering kan hjælpe med at give en generel forståelse af kraftudbredelse i fibrøse netværk, som i sidste ende kan bruges til at simulere mekanotransduktion.

Trin 1: Opret en NxN -matrix af ensartede firkanter

Generer en NxN -matrix af ensartede firkanter
Generer en NxN -matrix af ensartede firkanter
Generer en NxN -matrix af ensartede firkanter
Generer en NxN -matrix af ensartede firkanter

For at starte koden vælger vi N, som bestemmer dimensionerne på vores netværk (NxN). Værdien af N kan ændres manuelt for at ændre netværksdimensionerne efter behov. I dette eksempel er N = 8, så vi har et 8x8 netværk af punkter. Når vi har genereret matrixen, forbinder vi alle punkterne i matrixen, der har en længde på 1 enhed ved hjælp af afstandsformlen, distance = sqrt ((x2-x1)^2+(y2-y1)^2). Ved at gøre dette får vi et netværk af firkanter, der alle er ligeligt fordelt med 1 enhed. Dette kan ses i figur 101.

Trin 2: Randomisering af netværket

Randomisering af netværket
Randomisering af netværket
Randomisering af netværket
Randomisering af netværket

I dette trin ønsker vi at randomisere alle punktplaceringer undtagen de ydre punkter, som danner vores grænse. For at gøre dette finder vi først alle matrixkoordinaterne, der er lig med 0 eller N. Disse punkter er dem, der udgør grænsen. For de ikke -grænsepunkter randomiseres placeringen ved at tilføje en anden tilfældig værdi fra -.5 til.5 til både x- og y -positionerne. Det afbildede randomiserede billede kan ses i figur 1.

Trin 3: Få nye afstande

Få nye afstande
Få nye afstande

Når vores randomiserede netværk er oprettet, finder vi afstanden mellem forbundne punkter ved hjælp af afstandsformlen igen.

Trin 4: Vælg et punkt, og sammenlign afstanden fra det punkt til andre

Vælg et punkt, og sammenlign afstanden fra det punkt til andre
Vælg et punkt, og sammenlign afstanden fra det punkt til andre
Vælg et punkt, og sammenlign afstanden fra det punkt til andre
Vælg et punkt, og sammenlign afstanden fra det punkt til andre
Vælg et punkt, og sammenlign afstanden fra det punkt til andre
Vælg et punkt, og sammenlign afstanden fra det punkt til andre

I dette trin kan vi vælge et interessepunkt ved hjælp af markøren, som vist i figur 2. Du behøver ikke at flytte markøren nøjagtigt til punktet, fordi koden justerer den til det nærmeste forbindelsespunkt. For at gøre dette beregner vi først afstanden mellem alle tilsluttede punkter og det punkt, vi lige har valgt. Når alle afstande er beregnet, vælger vi det punkt med den mindste afstand fra det valgte punkt for at blive det faktiske valgte punkt.

Trin 5: Flyt til et nyt punkt

Flyt til et nyt punkt
Flyt til et nyt punkt
Flyt til et nyt punkt
Flyt til et nyt punkt
Flyt til et nyt punkt
Flyt til et nyt punkt

I dette trin, ved hjælp af det punkt, der blev valgt i det foregående trin, flytter vi punktet til en ny placering. Denne bevægelse udføres ved at vælge en ny position med markøren, der erstatter den tidligere position. Denne bevægelse vil blive brugt til at simulere en udøvet kraft på grund af ændring i fjederlængde. I den helt blå figur vælges en ny placering. I den næste figur kan bevægelsen visualiseres med de orange forbindelser, som er de nye placeringer i modsætning til de blå forbindelser, som var de gamle steder.

Trin 6: Force = K*afstand

Kraft = K*afstand
Kraft = K*afstand

I dette trin anvender vi ligningskraften = k*afstand, hvor k er en konstant 10 for kollagenfibre. Fordi fibernetværket starter ved sin ligevægtstilstand, er nettokraften 0. Vi opretter en nulvektor længden af den matrix, vi genererede tidligere for at repræsentere denne ligevægt.

Trin 7: Skift netværksbevægelse på grund af det flyttede punkt

Skift netværksbevægelse på grund af det flyttede punkt
Skift netværksbevægelse på grund af det flyttede punkt
Skift netværksbevægelse på grund af det flyttede punkt
Skift netværksbevægelse på grund af det flyttede punkt
Skift netværksbevægelse på grund af det flyttede punkt
Skift netværksbevægelse på grund af det flyttede punkt
Skift netværksbevægelse på grund af det flyttede punkt
Skift netværksbevægelse på grund af det flyttede punkt

I dette trin simulerer vi netværkets bevægelse som reaktion på punktbevægelsen for at vende tilbage til dets ligevægtstilstand. Vi starter med at finde de nye afstande mellem to punkter. Med dette kan vi finde ændringen i fiberlængde ved at se på forskellen mellem de gamle og nye afstande. Vi kan også se, hvilke punkter der er flyttet, og også de punkter, de er forbundet med ved at sammenligne de nye og gamle punktplaceringer. Dette giver os mulighed for at se, hvilke punkter der skal bevæge sig som reaktion på den udøvede kraft. Bevægelsesretningen kan opdeles i dens x- og y -komponenter, hvilket giver en 2D -retningsvektor. Ved hjælp af k -værdien, ændring i afstand og retningsvektor kan vi beregne kraftvektoren, der kan bruges til at flytte vores punkter mod ligevægt. Vi kører dette afsnit af koden 100 gange, hver gang vi bevæger os i trin af Force*.1. At køre koden 100 gange giver os mulighed for i sidste ende at nå ligevægt igen, og ved at holde randbetingelser ser vi en ændring i netværket i stedet for blot et helt skift. Netværksbevægelsen kan ses i figur 3, hvor den gule er de flyttede positioner og den blå er de foregående.

Trin 8: Færdig kode

Vedlagt i dette afsnit er en kopi af vores kode. Du er velkommen til at ændre den, så den passer til dine behov med modellering af forskellige netværk!

Anbefalede: