Sadržaj:

Mjerenje promjena sile generirane vlaknaste mreže kada je zamijenjeno vanjskom silom: 8 koraka
Mjerenje promjena sile generirane vlaknaste mreže kada je zamijenjeno vanjskom silom: 8 koraka

Video: Mjerenje promjena sile generirane vlaknaste mreže kada je zamijenjeno vanjskom silom: 8 koraka

Video: Mjerenje promjena sile generirane vlaknaste mreže kada je zamijenjeno vanjskom silom: 8 koraka
Video: ПРАВДА О РЕИНКАРНАЦИИ. Что будет после смерти? Откровение оккультиста (English, CS Subtitles) 2024, Rujan
Anonim
Mjerenje promjena sile generirane vlaknaste mreže kada je zamijenjeno vanjskom silom
Mjerenje promjena sile generirane vlaknaste mreže kada je zamijenjeno vanjskom silom

Stanice su u stanju komunicirati sa svojim okolnim izvanstaničnim matriksom (ECM) i mogu se primijeniti, ali i reagirati na sile koje ECM djeluje. Za naš projekt simuliramo međusobno povezanu mrežu vlakana koja bi djelovala kao ECM i vidimo kako se mreža mijenja kao odgovor na pomicanje jedne od točaka. ECM je modeliran kao međusobno povezan sustav opruga koje su u početku u ravnoteži s neto silom od nule. Kako se sila primjenjuje na mrežu kao odgovor na pomicanje točke, pokušavamo natjerati povezane točke da reagiraju na silu na takav način da se pokušaju vratiti u ravnotežu. Sila se prati jednadžbom F = k*x gdje je k konstanta opruge, a x promjena duljine vlakana. Ova simulacija može pomoći u stvaranju općeg razumijevanja širenja sile u vlaknastim mrežama koje se na kraju može koristiti za simulaciju mehanotransdukcije.

Korak 1: Generirajte NxN matricu jednoličnih kvadrata

Generirajte NxN matricu jednoličnih kvadrata
Generirajte NxN matricu jednoličnih kvadrata
Generirajte NxN matricu jednoličnih kvadrata
Generirajte NxN matricu jednoličnih kvadrata

Za početak koda, odabiremo N koje će odrediti dimenzije naše mreže (NxN). Vrijednost N može se ručno promijeniti kako bi se po potrebi promijenile mrežne dimenzije. U ovom primjeru, N = 8 pa imamo mrežu točaka 8x8. Nakon što generiramo matricu, povezujemo sve točke u matrici koje imaju duljinu od 1 jedinice koristeći formulu udaljenosti, udaljenost = sqrt ((x2-x1)^2+(y2-y1)^2). Na taj način dobivamo mrežu kvadrata koji su svi jednako razmaknuti za 1 jedinicu. To se može vidjeti na slici 101.

Korak 2: Randomiziranje mreže

Randomiziranje mreže
Randomiziranje mreže
Randomiziranje mreže
Randomiziranje mreže

U ovom koraku želimo randomizirati sva mjesta točaka osim vanjskih točaka koje će činiti našu granicu. Da bismo to učinili, prvo pronalazimo sve koordinate matrice koje su jednake 0 ili N. Ove su točke one koje čine granicu. Za neograničene točke, mjesto se randomizira dodavanjem različite slučajne vrijednosti od -5 do.5 i na položaje x i y. Iscrtana nasumična slika može se vidjeti na slici 1.

Korak 3: Pronađite nove udaljenosti

Dobijte nove udaljenosti
Dobijte nove udaljenosti

Nakon što je naša randomizirana mreža napravljena, opet pronalazimo udaljenost između spojenih točaka pomoću formule udaljenosti.

Korak 4: Odaberite točku i usporedite udaljenost od te točke do drugih

Odaberite točku i usporedite udaljenost od te točke do drugih
Odaberite točku i usporedite udaljenost od te točke do drugih
Odaberite točku i usporedite udaljenost od te točke do drugih
Odaberite točku i usporedite udaljenost od te točke do drugih
Odaberite točku i usporedite udaljenost od te točke do drugih
Odaberite točku i usporedite udaljenost od te točke do drugih

U ovom koraku pomoću kursora možemo odabrati točku interesa, kao što je prikazano na slici 2. Ne morate pomaknuti pokazivač točno na točku jer će je kôd prilagoditi najbližoj točki veze. Da bismo to učinili, prvo izračunamo udaljenost između svih spojenih točaka i točke koju smo upravo odabrali. Nakon što se izračunaju sve udaljenosti, odabiremo točku s najmanjom udaljenošću od odabrane točke kako bismo postali stvarna odabrana točka.

Korak 5: Prijeđite na novu točku

Pomicanje na novu točku
Pomicanje na novu točku
Pomicanje na novu točku
Pomicanje na novu točku
Pomicanje na novu točku
Pomicanje na novu točku

U ovom koraku, pomoću točke koja je odabrana u prethodnom koraku, premještamo točku na novo mjesto. Ovo se kretanje vrši odabirom novog položaja kursorom koji će zamijeniti prethodni položaj. Ovo će se kretanje koristiti za simulaciju naprezanja zbog promjene duljine opruge. Na potpuno plavoj slici odabire se novo mjesto. Na sljedećoj slici kretanje se može vizualizirati pomoću narančastih veza koje predstavljaju nove lokacije, za razliku od plavih veza koje su bile stare lokacije.

Korak 6: Sila = K*udaljenost

Sila = K*udaljenost
Sila = K*udaljenost

U ovom koraku primjenjujemo silu jednadžbe = k*udaljenost, gdje je k konstanta 10 za kolagenska vlakna. Budući da vlaknasta mreža počinje u stanju ravnoteže, neto sila je 0. Stvaramo nulti vektor duljine matrice koju smo generirali ranije za predstavljanje ove ravnoteže.

Korak 7: Promijenite kretanje mreže zbog pomaknute točke

Promijenite kretanje mreže zbog pomaknute točke
Promijenite kretanje mreže zbog pomaknute točke
Promijenite kretanje mreže zbog pomaknute točke
Promijenite kretanje mreže zbog pomaknute točke
Promijenite kretanje mreže zbog pomaknute točke
Promijenite kretanje mreže zbog pomaknute točke
Promijenite kretanje mreže zbog pomaknute točke
Promijenite kretanje mreže zbog pomaknute točke

U ovom koraku simuliramo kretanje mreže kao odgovor na pomicanje točke kako bismo se vratili u stanje ravnoteže. Počinjemo s pronalaženjem novih udaljenosti između dvije točke. Time možemo pronaći promjenu duljine vlakana gledajući razliku između stare i nove udaljenosti. Također možemo vidjeti koje su se točke pomaknule te točke s kojima su povezane usporedbom novih i starih lokacija točaka. To nam omogućuje da vidimo koje se točke trebaju pomicati kao odgovor na primijenjenu silu. Smjer kretanja može se raščlaniti na njegove x i y komponente, dajući 2D vektor smjera. Koristeći k vrijednost, promjenu udaljenosti i vektor smjera, možemo izračunati vektor sile koji se može koristiti za pomicanje naših točaka prema ravnoteži. Ovaj dio koda pokrećemo 100 puta, svaki put krećući se u koracima sile*.1. Pokretanje koda 100 puta omogućuje nam da na kraju ponovno postignemo ravnotežu i držanjem graničnih uvjeta vidimo promjenu u mreži umjesto jednostavno cijelu smjenu. Kretanje mreže može se vidjeti na slici 3, pri čemu su žute pomaknute pozicije, a plave prethodne.

Korak 8: Gotov kod

U ovom odjeljku nalazi se kopija našeg koda. Slobodno ga izmijenite tako da odgovara vašim potrebama modeliranjem različitih mreža!

Preporučeni: