Subskrypcja JoVE jest wymagana do oglądania tego materiału. Zaloguj się lub rozpocznij bezpłatny okres próbny.

Artykuł metodologiczny

Typowy przepływ pracy symulujący układy cytoszkieletu

1.8K wyświetleń

DOI:

10.3791/64125

7 kwietnia 2023

* These authors contributed equally

W tym artykule

Podsumowanie

Ten protokół pokazuje, jak używać Cytosim, symulacji cytoszkieletu Open Source, do badania zachowania sieci włókien połączonych silnikami molekularnymi i pasywnymi siecierami. Postępuje ogólny przepływ pracy z instrukcjami krok po kroku, aby zmienić liczbę urządzeń sieciujących i wykreślić wynikową kurczliwość sieci.

Streszczenie

Wiele systemów cytoszkieletu jest teraz wystarczająco dobrze znanych, aby umożliwić ich precyzyjne modelowanie ilościowe. Włókna mikrotubul i aktyny są dobrze scharakteryzowane, a związane z nimi białka są często znane, a także ich obfitość i interakcje między tymi pierwiastkami. W ten sposób symulacje komputerowe mogą być wykorzystywane do precyzyjnego badania zbiorowego zachowania systemu, w sposób uzupełniający do eksperymentów. Cytosim to pakiet symulacyjny cytoszkieletu typu open source, przeznaczony do obsługi dużych systemów elastycznych włókien z powiązanymi białkami, takimi jak silniki molekularne. Oferuje również możliwość symulacji pasywnych środków sieciujących, dyfuzyjnych środków sieciujących, nukleatorów, obcinaczy i dyskretnych wersji silników, które nadepną tylko na niezajęte miejsca sieciowe na żarniku. Inne obiekty uzupełniają włókna, oferując sferyczną lub bardziej skomplikowaną geometrię, którą można wykorzystać do reprezentowania chromosomów, jądra lub pęcherzyków w komórce.

Cytosim oferuje proste narzędzia wiersza poleceń do przeprowadzania symulacji i wyświetlania jej wyników, które są wszechstronne i nie wymagają umiejętności programowania. W tym przepływie pracy podane są instrukcje krok po kroku, aby i) zainstalować niezbędne środowisko na nowym komputerze, ii) skonfigurować Cytosim do symulacji skurczu sieci 2D aktomiozyny oraz iii) stworzyć wizualną reprezentację systemu. Następnie system jest badany poprzez systematyczną zmianę kluczowego parametru: liczby osób sieciujących. Wreszcie, wizualna reprezentacja systemu jest uzupełniona numeryczną kwantyfikacją kurczliwości, aby zobaczyć na wykresie, w jaki sposób kurczliwość zależy od składu systemu. Ogólnie rzecz biorąc, te różne kroki stanowią typowy przepływ pracy, który można zastosować z niewielkimi modyfikacjami w celu rozwiązania wielu innych problemów w dziedzinie cytoszkieletu.

Wprowadzenie

Cytoszkielet składa się z włókien wewnątrz komórki i powiązanych z nimi cząsteczek, takich jak silniki molekularne, które często tworzą dynamiczną siatkę o niezwykłych właściwościach mechanicznych. Cytoszkielet występuje w różnych konfiguracjach w różnych typach komórek w prawie wszystkich formach życia. Jego prawidłowe funkcjonowanie jest niezbędne dla podstawowych procesów komórkowych, takich jak podział, ruchliwość i polaryzacja. Reguluje również interakcje mechaniczne między komórkami, wpływając w ten sposób na morfogenezę tkanek i organizmów. Cytoszkielet pełni kilka funkcji i przejawia się w wielu procesach biologicznych. Na przykład skurcz mięśni jest związany z udarem mocy silników molekularnych miozyny na włóknach aktynowych. Innym przykładem jest utrzymanie neuronów, które opiera się na ruchach silników kinezynowych wzdłuż mikrotubul znajdujących się wewnątrz aksonów tych neuronów. Aktyna i mikrotubule to dwa dominujące typy włókien cytoszkieletu, bez których życie, jakie znamy, byłoby niemożliwe.

Cytoszkielet jest zasadniczo systemem biomechanicznym, którego nie można sprowadzić wyłącznie do jego chemii. Mikrotubule lub filamenty aktynowe są zbudowane z tysięcy monomerów i rozciągają się na kilka mikrometrów. Konformacje tych włókien w przestrzeni i siły, które mogą przenosić na błonę plazmatyczną, jądro lub inne organelle, są kluczowymi aspektami ich roli w komórce. Na przykład sieć filamentów aktynowych i silników miozyny, zwana korą aktomiozyny1, generuje siły podtrzymujące ruchliwość komórek i zmiany morfologiczne w komórkach zwierzęcych. Zupełnie inny układ obserwuje się w komórkach roślinnych, gdzie mikrotubule korowe kierują odkładaniem włókien celulozowych, kontrolując w ten sposób architekturę ściany komórkowej, która ostatecznie decyduje o tym, jak te komórki będą rosły w przyszłości2.

Podczas gdy mechanika wyraźnie odgrywa znaczącą rolę w operacjach cytoszkieletu, chemia jest równie ważna. Włókna rosną w procesie samoorganizacji, w którym monomery znajdują swoje miejsce dokowania na końcu włókna po dyfuzji przez cytoplazmę3. W skali molekularnej montaż i demontaż na końcu włókien jest zatem określany przez powinowactwo molekularne4. Podobnie, białka cytoszkieletu dyfundują, a szybkość wiązania i rozwiązywania określa ich powinowactwo do napotkanych włókien. W przypadku silników molekularnych cykle reakcji chemicznych obejmujących hydrolizę ATP są związane z ruchami wzdłuż włókien i, być może, siłami, które im towarzyszą5. Co ciekawe, cytoszkielet oferuje wiele nietypowych wyzwań i dużą różnorodność procesów obejmujących podobne komponenty. Jest to bogaty plac zabaw na styku biologii, chemii i fizyki.

Systemy cytoszkieletowe są podatne na modelowanie matematyczne. W rzeczywistości, dzięki doskonałym badaniom przeprowadzonym w ostatnich dziesięcioleciach, główne składniki molekularne są najprawdopodobniej już zidentyfikowane, co ilustruje endocytoza6. W organizmach modelowych, takich jak drożdże, znane są właściwości tych pierwiastków, a także skład układowy niektórych z ich procesów. Na przykład, struktura i właściwości materiałowe mikrotubul7, a także ich liczba i średnie długości na różnych etapach wrzeciona mitotycznego, zostały opisane8. Liczba kinezyn, które łączą mikrotubule w spójną strukturę mechaniczną, jest często znana9. Prędkości wielu silników zostały zmierzone in vitro10. Ponadto eksperymentatorzy mogą obserwować i określać ilościowo te układy in vivo w warunkach typu dzikiego lub zmutowanego. Połączenie teorii z eksperymentami in vivo i in vitro umożliwia naukowcom sprawdzenie, czy obecna wiedza na temat układu cytoszkieletu jest wystarczająca, aby wyjaśnić jego obserwowane zachowanie. Wykorzystanie narzędzi matematycznych i obliczeniowych pozwala nam również na wnioskowanie o tym, jak komponenty działają kolektywnie na podstawie założeń wynikających z obserwacji w skali molekularnej, zwykle w uproszczonych sytuacjach (np. eksperymenty z pojedynczymi cząsteczkami).

Rolę teorii można zilustrować na praktycznym przykładzie: biciu rzęsek. To dudnienie jest spowodowane ruchem silników dyneiny wzdłuż mikrotubul w rzęskach. Można zapytać, od czego zależy prędkość silnika dyneinowego w tym układzie. Jedną z możliwych odpowiedzi jest to, że maksymalna prędkość jest ograniczona przez wymóg utrzymania określonego wzorca dudnienia. Byłoby to zrozumiałe, gdyby bicie odbywało się w ramach doboru naturalnego. W takim przypadku, gdyby silniki poruszały się szybciej, proces straciłby swoje pożądane właściwości - rzęski nie biłyby tak wydajnie, a nawet całkowicie by zawiodły. Chociaż jest to możliwe, drugą alternatywą jest to, że jakiś wewnętrzny czynnik może ograniczać prędkość dyneiny.

Na przykład, komórka może nie mieć wystarczającej ilości ATP, aby przyspieszyć działanie dyneiny, lub ruchy białka wymagane do aktywności dyneiny po prostu nie mogą być przyspieszone. W takim przypadku, gdyby silniki mogły być szybsze pomimo fizycznych ograniczeń, bicie uległoby poprawie. Trzecią możliwością jest oczywiście to, że zmiana prędkości nie wpływa znacząco na proces, co może być korzystne dla organizmu, zapewniając pewną "odporność" na niekontrolowane czynniki. Spośród tych trzech możliwości można zidentyfikować właściwą, obliczając wzór dudnienia na podstawie właściwości dyneiny. Rzeczywiście, odpowiedni model matematyczny powinien przewidywać, w jaki sposób na wzorzec dudnienia wpływa zmienna prędkość dyneiny i nie podlega ograniczeniom, które istnieją w świecie fizycznym. Oczywiście poprawność modelu musi zostać zweryfikowana, ale nawet "niepoprawne" modele mogą generować ciekawe pomysły.

Model może przybrać formę struktury analitycznej lub być symulacją numeryczną systemu. Tak czy inaczej, luka między skalą molekularną a skalą funkcjonalną pozostaje przeszkodą, a opracowanie tych modeli nie jest prostym zadaniem, ponieważ kilka procesów mechanicznych i chemicznych musi zostać zintegrowanych z równaniami opisującymi system biologiczny. Teoria występuje w różnych formach, oferując różne kompromisy między prostotą a realizmem. Zwiększanie stopnia szczegółowości modelu nie zawsze jest korzystne, ponieważ może ograniczyć naszą zdolność do rozwiązywania równań lub, innymi słowy, do wyprowadzania przewidywań teorii. Ten sam kompromis istnieje w przypadku symulacji. Modelarze będą musieli wybrać składniki systemu, które mają być brane pod uwagę, ignorując pewne aspekty. Te kluczowe decyzje będą w dużym stopniu zależały od celu badania. W dzisiejszych czasach niezwykłe ulepszenia w sprzęcie komputerowym umożliwiają symulację wielu układów cytoszkieletu z wystarczającą ilością szczegółów w wystarczająco długim czasie, aby przeanalizować ich zachowanie. To często generuje nieoczekiwane pomysły i nowatorskie kierunki badań. Na przykład symulacje podobne do tych, które zostaną użyte w tym protokole, doprowadziły do obliczenia na odwrocie koperty, które może przewidzieć kurczliwość sieci na podstawie jej składu11.

Metody numeryczne są wszechobecne w naukach inżynieryjnych i fizycznych, a ich zastosowanie w biologii rośnie. Obecnie praktycznie wszystkie nasze technologiczne whatchamacallit (zegarki, telefony, samochody i komputery) zostały po raz pierwszy wymyślone na komputerze i istnieje potężne oprogramowanie, które to robi. Biorąc pod uwagę dobrze scharakteryzowany układ cytoszkieletu i zakładając, że został określony odpowiedni poziom opisu, kilka kwestii musi zostać jeszcze rozwiązanych, zanim będzie można go zasymulować. W przypadku najprostszych problemów najwłaściwszą drogą działania może być napisanie symulacji "kodując od zera", innymi słowy, zaczynając od generycznego języka programowania lub platformy matematycznej, takiej jak MATLAB. Ma to tę zaletę, że autor kodu będzie miał dogłębną wiedzę na temat tego, co zostało zaimplementowane i dokładnie wie, jak działa oprogramowanie. Ta droga nie jest jednak pozbawiona ryzyka i nierzadko można być świadkiem, jak doktoranci spędzają większość swojego czasu pracy na pisaniu kodu, a nie na zajmowaniu się pytaniami naukowymi.

Alternatywą jest korzystanie z oprogramowania wymyślonego przez innych, ale to również nie jest pozbawione ryzyka; każdy duży kod źródłowy ma tendencję do spontanicznego nabywania cech nieprzeniknionej czarnej skrzynki, pomimo najbardziej godnych podziwu wysiłków ich autorów, aby temu zapobiec. Korzystanie z czarnych skrzynek z pewnością nie jest marzeniem naukowca. Duży kod źródłowy może również stać się obciążeniem i szybsze może być rozpoczęcie od zera niż modyfikowanie istniejącej bazy kodu, aby robiła coś innego. Aby załagodzić ten problem, zawsze można zaprosić do pomocy autorów oprogramowania, ale to może nie wystarczyć. Często istnieje różnica w kulturze naukowej między autorami oprogramowania a osobami, które chciałyby z niego korzystać, co oznacza, że wiele ukrytych założeń wymaga wyjaśnienia. Dzięki temu, że kod stanie się Open Source, oczekuje się, że więcej osób będzie zaangażowanych w rozwój oprogramowania i utrzymanie jego dokumentacji, poprawiając tym samym jego jakość. Wszystko to są ważne kwestie, które należy odpowiednio rozważyć przed dokonaniem jakiejkolwiek inwestycji. Niemniej jednak jedynym sposobem na postęp w dłuższej perspektywie jest promowanie solidnych rozwiązań programistycznych, używanych i utrzymywanych przez szeroką społeczność o wspólnych zainteresowaniach naukowych.

Chociaż ten protokół korzysta z Cytosim, istnieją inne narzędzia Open Source, które mogą symulować ten sam system, na przykład AFINES12, MEDYAN13, CyLaKS14, aLENS15 i AKYT16, by wymienić tylko kilka. Niestety, porównywanie tych projektów wykracza poza ramy artykułu. Tutaj podane są instrukcje krok po kroku, aby symulować kurczliwą sieć 2D aktomiozyny. Ten system jest prosty i wykorzystuje lepiej ugruntowane możliwości Cytosim. Cytosim jest zbudowany wokół wieloplatformowego silnika rdzeniowego, który może uruchamiać symulacje w 2D lub 3D. Posiada modułową bazę kodu, dzięki czemu można go łatwo dostosować do wykonywania określonych zadań. Cytosim jest równie stabilny i wydajny w 3D i był z powodzeniem stosowany w przeszłości do badania różnych problemów związanych z mikrotubulami i filamentami aktyny: asocjacja dwóch astry mikrotubul17, ruch jąder w komórkach18,19, endocytoza6, cytokineza20, tworzenie wrzeciona mitottycznego21, ruchy wrzeciona mitotycznego22, przechwytywanie chromosomów23, kurczenie się sieci aktomiozyny11,24, oraz mechanika pierścienia mikrotubul w płytkach krwi25, a także zdolności opracowane dla tych projektów zostały zachowane w kodzie. Opisany tutaj przepływ pracy można dostosować do wielu innych problemów. Korzysta z wiersza poleceń systemu Unix, który może być nieznany niektórym czytelnikom. Korzystanie z wiersza poleceń jest jednak najbardziej przenośnym i wygodnym sposobem automatyzacji procesu uruchamiania symulacji. Zintegrowane graficzne interfejsy użytkownika mają na celu zapewnienie łatwego, intuicyjnego dostępu do oprogramowania, ale często odbywa się to kosztem ogólności. Celem tego artykułu jest zilustrowanie podejścia, które można łatwo zmodyfikować lub dostosować do innych problemów. Znajdują się tam uwagi wyjaśniające znaczenie poleceń.

Aby symulować sieć aktomiozyny, włókna są modelowane jako linie zorientowane i reprezentowane przez wierzchołki rozmieszczone wzdłuż ich długości (Rysunek 1). Jest to pośredni poziom opisu, powszechny w fizyce polimerów, który ignoruje prawdziwą naturę 3D włókien, ale pozwala na obliczenie wygięcia. Włókna mogą rosnąć i kurczyć się na swoich końcach, zgodnie z różnymi modelami, które obejmują zarówno fenomenologię aktyny, jak i mikrotubul. W komórkach włókna są zorganizowane przede wszystkim poprzez interakcje, które ograniczają ich ruch, na przykład przyczepienie się do innych włókien lub po prostu uwięzienie w komórce. W Cytosimie wszystkie takie interakcje są linearyzowane i łączone w dużą matrix26. Równania opisujące ruch wszystkich wierzchołków włókien wywodzą się z tej macierzy, przyjmując lepki ośrodek i losowe zmienne składniki reprezentujące ruch Browna. Równania te są rozwiązywane numerycznie, aby uzyskać ruch włókien wraz ze wszystkimi działającymi na nie siłami w sposób spójny i wydajny26. Na ten mechaniczny silnik nałożony jest silnik stochastyczny, który symuluje dyskretne zdarzenia, takie jak przyłączanie i odłączanie silników molekularnych lub dynamika składania włókien. Podsumowując, Cytosim wykorzystuje najpierw symulowaną dynamikę do obliczenia mechaniki sieci włókien, połączonych w dowolny sposób, a po drugie, metody stochastyczne do symulacji wiązania, rozwiązywania i dyfuzji białek, które łączą lub wpływają na włókna.

Przedstawiony tutaj przepływ pracy był często stosowany do początkowego zbadania systemu za pomocą Cytosim. Krytycznym krokiem dla wielu potencjalnych użytkowników będzie prawdopodobnie instalacja komponentów oprogramowania. Dystrybucja oprogramowania jako kodu źródłowego spełnia imperatywy Otwartej Nauki, ale jest podatna na błędy, ponieważ twórcy oprogramowania mają dostęp tylko do ograniczonej puli architektury w celu przetestowania programu. Kompilacja może zakończyć się niepowodzeniem, ponieważ systemy operacyjne różnią się. Podane tutaj instrukcje prawdopodobnie staną się nieaktualne wraz z ewolucją systemów komputerowych i kodów źródłowych. Dlatego niezbędne jest okresowe sprawdzanie najnowszych instrukcji online. W przypadku problemów zdecydowanie zaleca się, aby użytkownicy zgłaszali się z powrotem, publikując posty na odpowiednim kanale opinii (obecnie strona główna Cytosim na Gitlab), aby pomóc rozwiązać problem.

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Protokół

UWAGA: Protokół składa się z następujących kroków: przygotowanie platformy dla systemów Windows 10, MacOS i Linux; instalacja programu Cytosim; konfiguracja symulacji, uruchomienie testowe oraz wyświetlanie graficzne; wielokrotne uruchomienia z różnicowaniem jednego parametru: liczby czynników sieciujących w sieci; generowanie wykresu w celu analizy wpływu liczby czynników sieciujących na kurczliwość; uruchomienia równoległe oraz losowe próbkowanie. Cały tekst następujący po znaku „>” to komendy, które należy wprowadzić dosłownie w oknie terminala. Znak „>” reprezentuje znak zachęty terminala i nie powinien być wpisywany, natomiast wszystkie pozostałe znaki są istotne.

1. Przygotowanie platformy

UWAGA: W zależności od systemu operacyjnego (MacOS, Windows 10 lub Linux) należy wykonać krok 1.1, krok 1.2 lub krok 1.3.

  1. Przygotowanie (MacOS)
    1. Zainstaluj Xcode Command Line Tools, otwierając Terminal (w Aplikacje/Narzędzia), i wprowadź:
      gt; xcode-select --install
    2. Aby przeglądać lub edytować kod Cytosim, zainstaluj Xcode z Apple App Store (https://apps.apple.com/us/app/Xcode/id497799835?mt=12).
      UWAGA: Wbudowany edytor Xcode jest w pełni odpowiedni. Inne edytory zorientowane na kod również będą działać, na przykład TextMate. Aby używać TextMate, pobierz oprogramowanie i postępuj zgodnie z instrukcjami ze strony https://macromates.com.
  2. Przygotowanie (Windows)
    UWAGA: W przypadku systemu Windows 10 lub nowszego, Cytosim może być uruchamiany przy użyciu „Windows Subsystem for Linux" (WSL), jak opisano poniżej. Alternatywą dla starszych wersji jest Cygwin, ale instrukcje do niego tutaj nie zostały podane.
    1. Zaktualizuj system operacyjny komputera, aby spełniał wymagania dla WSL 2: Windows 10 wersja 1903 lub nowsza, z Build 18362 lub nowszym dla systemów x64 oraz wersja 2004 lub nowsza, z Build 19041 lub nowszym dla systemów ARM64. W celu uzyskania informacji o kolejnych aktualizacjach wersji sprawdź stronę https://docs.microsoft.com/en-us/windows/release-health/release-information.
    2. Wpisz Włącz lub wyłącz funkcje systemu Windows w polu wyszukiwania paska zadań. Ręcznie włącz (Diagram równowagi statycznej; ΣFx=0; bilans sił; edukacyjny koncept fizyki.) Platformę maszyny wirtualnej oraz (Diagram równowagi statycznej; ΣFx=0; bilans sił; edukacyjny koncept fizyki.) Podsystem Windows dla Linux. Kliknij OK i uruchom ponownie system Windows.
    3. Przejdź do sklepu Microsoft Store w systemie Windows i wyszukaj Ubuntu. Pobierz i zainstaluj aktualną wersję (Ubuntu 20.04 LTS według stanu na 03.2022).
    4. Kliknij Uruchom, aby otworzyć Terminal Ubuntu. Jeśli pojawi się prośba o pobranie najnowszego jądra Linux WSL2, postępuj zgodnie z wyświetlanymi instrukcjami. Zainstaluj aktualizację i ponownie uruchom Ubuntu.
    5. Postępuj zgodnie z instrukcjami w terminalu, aby Wprowadzić nową nazwę użytkownika UNIX i ustawić hasło. Po skonfigurowaniu konta użytkownika uruchom Ubuntu z pola wyszukiwania paska zadań Windows. Otwórz katalog domowy (znany jako „.”) z okna poleceń:
      > explorer.exe .
    6. Zainstaluj serwer X-Window kompatybilny z WSL, na przykład Xming: https://sourceforge.net/projects/xming/
    7. Uruchom serwer X-Window, Xming, klikając dwukrotnie ikonę Xming; wybierz Multiple Windows. Następnie otwórz terminal Ubuntu i wykonaj krok 1.3 (Linux).
  3. Przygotowanie (Linux)
    UWAGA: Te instrukcje są odpowiednie dla dystrybucji Linux korzystających z menedżera pakietów APT. Polecenia te muszą zostać zmodyfikowane dla dystrybucji takich jak Red Hat Linux, które używają innego menedżera pakietów. W takim przypadku postępuj zgodnie z instrukcjami danej dystrybucji Linux, aby zainstalować te same pakiety.
    1. Zaktualizuj system Linux:
      > sudo apt-get update
      > sudo apt-get upgrade
    2. Zainstaluj kompilator C++ oraz narzędzie make od GNU (https://www.gnu.org/software/make):
      > sudo apt-get install build-essential
    3. Zainstaluj biblioteki BLAS/LAPACK (http://www.netlib.org/lapack):
      > sudo apt-get install libblas-dev liblapack-dev
    4. Zainstaluj bibliotekę deweloperską i pliki nagłówkowe OpenGL (https://www.mesa3d.org):
      > sudo apt-get install mesa-common-dev
    5. Zainstaluj bibliotekę GLEW (http://glew.sourceforge.net):
      > sudo apt-get install libglew-dev
    6. Zainstaluj bibliotekę freeGLUT (http://freeglut.sourceforge.net):
      > sudo apt-get install freeglut3-dev
    7. Zainstaluj system kontroli wersji GIT (https://git-scm.com):
      > sudo apt-get install git
    8. Zainstaluj programy testowe X11 (np. xeyes, xclock, xcalc):
      > sudo apt-get install x11-apps
    9. Skonfiguruj zmienną środowiskową DISPLAY:
      > export DISPLAY=:0
      1. Spróbuj otworzyć okno X11:
        > xeyes
      2. Jeśli to zadziała, przejdź do kroku 2. Jeśli pojawi się błąd failed to open the display, spróbuj innej wartości DISPLAY.
      3. Znajdź adres IP maszyny WSL2:
        > cat /etc/resolv.conf
      4. Jeśli pojawi się numer IP, np. „nameserver 10.16.0.7”, użyj tego numeru IP zamiast X.X.X.X poniżej:
        > export DISPLAY= X.X.X.X:0
        > xeyes
      5. Jeśli to zadziała, przejdź do kroku 2. Jeśli „play” nie może „otworzyć ekranu” (open the display), spróbuj uruchomić go z poziomu okna „xterm”:
        > sudo apt install xterm
        > xterm -display :0
      6. W nowym oknie, które się otworzy, wpisz:
        > xeyes

2. Instalacja programu Cytosim

UWAGA: Kroki te są podobne dla każdego systemu operacyjnego: MacOS, WSL oraz Linux. W następnej sekcji polecenia będą wpisywane w terminalu, a „bieżący katalog roboczy” powinien być ustawiony na katalog, w którym skompilowano symulację. Katalog ten będzie określany jako katalog bazowy. Alternatywnie wszystko można wykonać w osobnym katalogu, kopiując pliki w razie potrzeby. Jeśli nie znasz wiersza poleceń, rozważ skorzystanie z samouczka, na przykład https://www.learnenough.com/command-line-tutorial lub https://learnpythonthehardway.org/book/appendixa.html.

  1. Pobierz kod źródłowy Cytosim:
    > git clone https://gitlab.com/f-nedelec/cytosim.git cytosim
    UWAGA: Do pobrania kodu nie jest wymagane konto Gitlab. Powinno to utworzyć nowy podkatalog „cytosim” w bieżącym katalogu.
  2. Kompilacja:
    > cd cytosim
    > make
    1. Sprawdź, czy w podkatalogu „bin” utworzono trzy pliki, wykonując polecenie:
      > ls bin
    2. Jeśli krok 2.2.1 nie powiódł się, spróbuj alternatywnej metody kompilacji poprzez instalację cmake (https://cmake.org):
      > mkdir b
      > cd b
      > cmake ..
      > make
      > cd ..
  3. Sprawdzenie plików wykonywalnych:
    > bin/sim info
    > bin/play info
    1. Zweryfikuj, czy oba pliki wykonywalne zostały skompilowane do przeprowadzania symulacji 2D. Poszukaj następującego wyniku powyższych zapytań „info”:
      Dimension: 2 Periodic: 1 Precision: 8 bytes
    2. Jeśli tak nie jest, i wyłącznie wtedy, zmodyfikuj plik „src/math/dim.h” (otwórz, zmień DIM na 2, zapisz) i ponownie skompiluj Cytosim:
      > make clean
      > make
  4. Uruchomienie próbne
    1. Skopiuj trzy pliki wykonywalne:
      > cp bin/sim sim
      > cp bin/play play
      > cp bin/report report
    2. Utwórz nowy katalog:
      > mkdir run
    3. Skopiuj i zmień nazwę standardowego pliku konfiguracyjnego:
      > cp cym/fiber.cym run/config.cym
    4. Uruchom symulację:
      > cd run
      > ../sim
    5. Wizualizacja wyników symulacji:
      > ../play
      1. Naciśnij spację, aby uruchomić animację. Naciśnij h, aby wyświetlić pomoc dotyczącą skrótów klawiszowych.
      2. Aby wyjść z programu, w systemie MacOS spróbuj Równowaga statyczna; ΣFx=0; schemat; analiza wektorów sił; edukacja; wizualizacja koncepcji fizycznej.-Q, lub CTRL-Q, lub wybierz Quit z menu. W ostateczności wprowadź CTRL-C w oknie terminala, z którego uruchomiono „play”.
    6. Uruchomienie w trybie na żywo (live mode):
      > ../play live

3. Konfiguracja symulacji

  1. Zainstaluj edytor tekstu zorientowany na kod (np. TextMate, SublimeText), jeśli nie jest jeszcze dostępny.
    Otwórz edytor i otwórz plik „config.cym”, znajdujący się w katalogu „run” utworzonym w kroku 2.4.2. Zapoznaj się z poszczególnymi sekcjami pliku konfiguracyjnego, który jest kopią pliku „fiber.cym” (Supplementary File 1).
    UWAGA: Cytosim zazwyczaj odczytuje tylko jeden plik konfiguracyjny kończący się rozszerzeniem „.cym”. Wszystkie modyfikacje zostaną wprowadzone tutaj w pliku „config.cym”. Listę parametrów zawiera Supplementary Table S1.
  2. Zmodyfikuj symulację, wprowadzając następujące zmiany w pliku „config.cym”:
    radius=5 → radius=3
    new 1 filament → new 100 filament
  3. Zapisz plik bez zmiany jego nazwy ani lokalizacji (nadpisz „config.cym”). Przejdź do okna Terminala i sprawdź, czy symulacja została zmodyfikowana zgodnie z oczekiwaniami, używając komendy:
    > ../play live
    UWAGA: Promień okręgu jest określony w mikrometrach (µm), podobnie jak wszystkie odległości w Cytosim. Cytosim stosuje system jednostek dostosowany do skali komórki, wyprowadzony z mikrometrów, pikoniutonów i sekund.
  4. W akapicie „set fiber filament” wprowadź następujące zmiany:
    rigidity=20 → rigidity=0.1
    segmentation= 0.5 → segmentation=0.2
    confine=inside, 200, cell → confine= inside, 10, cell
    W akapicie „new filament” zmień:
    length=12 → length=2
    Skróć czas symulacji, zmieniając:
    run 5000 system → run 1000 system
    UWAGA: Operacja ta dostosowuje właściwości filamentów. Akapit „set” definiuje trwałe właściwości filamentów, natomiast parametry w sekcji „new” są zazwyczaj warunkami początkowymi. Sztywność zginania jest określona w pN µm2. Segmentacja to przybliżona odległość między wierzchołkami opisującymi filamenty w mikrometrach (µm). Należy ją zmniejszyć, jeśli filamenty stają się bardziej elastyczne. Ostatnia zmiana zmniejsza sztywność (pN/µm) potencjału ograniczającego związanego z krawędziami „cell”. Długość zadeklarowana w akapicie „new” (2 µm) jest długością początkową filamentów, a ponieważ w tym modelu filamenty nie są dynamiczne, ich długości nie ulegną zmianie. Zaleca się podpisanie pliku konfiguracyjnego poprzez edycję pierwszej linii:
    ​% Imię i nazwisko, data, miejsce
    1. Sprawdź poprawność pliku konfiguracyjnego (powtórz krok 3.3).
  5. Utwórz pasywne konektory.
    1. Dodaj nowy akapit do pliku „config.cym”, przed liniami z komendami „new” i „run”, aby zdefiniować aktywność molekularną z powinowactwem do filamentów:
      set hand binder {
      binding_rate = 10
      binding_range = 0.01
      unbinding_rate = 0.2
      }
    2. Aby zdefiniować jednostki bifunkcyjne, dodaj kolejny akapit bezpośrednio poniżej:
      set couple crosslinker {
      hand1 = binder
      hand2 = binder
      stiffness = 100
      diffusion = 10
      }
    3. Dodaj komendę „new” po poprzednich akapitach i przed komendą „run”:
      new 1000 crosslinker
      UWAGA: W Cytosim szybkości są określone w jednostkach s−1, a zasięg w mikrometrach (µm). Sztywność jest określona w jednostkach pikoniutonów na mikrometr (pN/µm), a współczynnik dyfuzji w mikrometrach kwadratowych na sekundę (µm2/s). Kolejność komend w pliku konfiguracyjnym jest istotna i akapity te muszą pojawić się przed jakąkolwiek komendą „run”, w przeciwnym razie nie będą skuteczne. Aby dowiedzieć się więcej o obiektach Cytosim, zapoznaj się z samouczkiem w pliku „tuto_introduction.md”, który znajduje się w podfolderze „doc” katalogu bazowego: doc/tutorials/.
  6. Utwórz bifunkcyjne motory.
    1. Dodaj nowy akapit do pliku „config.cym”, przed liniami z komendami „new” i „run”:
      set hand motor {
      binding_rate = 10
      binding_range = 0.01
      unbinding_rate = 0.2
      activity = move
      unloaded_speed = 1
      stall_force = 3
      }
    2. Dodaj kolejny akapit po poprzednim:
      set couple complex {
      hand1 = motor
      hand2 = motor
      stiffness = 100
      diffusion = 10
      ​}
    3. Dodaj komendę „new” po poprzednich akapitach i przed komendą „run”:
      new 200 complex
      UWAGA: „activity = move” określa motor, który porusza się w sposób ciągły wzdłuż filamentu. Motor ten podlega liniowej krzywej siła-prędkość (Rysunek 1) charakteryzowanej przez prędkość bez obciążenia (µm/s) i siłę blokującą (pikoniuton). W każdym kroku czasowym, τ, przemieszcza się on o odległość, v × τ. Użycie „activity = none” określiłoby cząsteczkę, która się nie porusza, a ponieważ jest to aktywność domyślna, można by całkowicie pominąć parametr „activity”. Możliwe są inne rodzaje aktywności, na przykład „activity = walk” określiłoby motor wykonujący dyskretne kroki wzdłuż filamentu. Parametr „unloaded_speed” jest dodatni dla motoru skierowanego do końca plus. Określenie wartości ujemnej spowodowałoby ruch motora w stronę końców minus. Jest to wyjaśnione szerzej w pierwszym samouczku Cytosim (patrz link w kroku 3.5.2).
  7. Zapisz plik.
    Sprawdź symulację:
    > ../play live
    Uruchom symulację:
    > ../sim
    Wizualizuj wyniki:
    > ../play
    Skopiuj końcowy plik konfiguracyjny do katalogu bazowego:
    > cp config.cym ../config.cym
    UWAGA: Twój końcowy plik powinien być podobny do Supplementary File 2 („jove.cym”). Zwróć uwagę, ile czasu zajęło obliczenie tej symulacji. W następnych sekcjach czas ten zostanie pomnożony przez liczbę symulacji wykonanych w celu wygenerowania wykresu, na którym zmieniany jest dany parametr.

4. Przeszukiwanie parametrów

UWAGA: W tej sekcji liczba sieciujących w sieci jest systematycznie zmieniana.

  1. Importowanie skryptów Pythona.
    1. Utwórz podkatalog „byn” w katalogu głównym:
      > mkdir byn
    2. Skopiuj trzy skrypty z standardowej dystrybucji Cytosim:
      > cp python/run/preconfig.py byn/preconfig
      > cp python/look/scan.py byn/.
      > cp python/look/make_page.py byn/.
      UWAGA: Dla bezpieczeństwa kopie tych plików są dostarczone jako Supplementary File 3, Supplementary File 4 oraz Supplementary File 5 do niniejszego artykułu.
  2. Nadaj plikom uprawnienia do wykonywania:
    > chmod +x byn/preconfig
    > chmod +x byn/scan.py
    > chmod +x byn/make_page.py
    1. Sprawdź, czy skrypty wykonują się poprawnie:
      > byn/preconfig help
      > byn/scan.py help
      > byn/make_page.py help
      UWAGA: Powinno to wyświetlić opis sposobu użycia każdego polecenia. Można zmodyfikować zmienną PATH, aby wywoływać skrypty w prostszy sposób; patrz: https://en.wikipedia.org/wiki/PATH_(variable).
    2. Rozwiązywanie problemów
      1. Jeśli pojawi się błąd „command not found”, sprawdź wskazaną ścieżkę, która powinna odpowiadać lokalizacji pliku. Jeśli wystąpi inny typ błędu z powodu braku python2 w systemie operacyjnym, edytuj trzy pliki .py i zmodyfikuj shebang, czyli pierwszą linię każdego pliku (dodaj cyfrę „3”):
        #!/usr/bin/env python → #!/usr/bin/env python3
  3. Skopiuj plik konfiguracyjny, aby stworzyć „szablon” (Supplementary File 6):
    > cp config.cym config.cym.tpl
  4. Edytuj plik konfiguracyjny szablonu. W edytorze kodu otwórz plik „config.cym.tpl” znajdujący się w katalogu głównym. Zmień jedną linię, aby wprowadzić zmienny element tekstowy:
    new 1000 crosslinker → new [[range(0,4000,100)]] crosslinker
    UWAGA: Preconfig rozpozna kod zawarty w podwójnych nawiasach kwadratowych i zastąpi go wartością uzyskaną poprzez wykonanie tego kodu w Pythonie. W Pythonie „range(X,Y,S)” określa liczby całkowite od X do Y z przyrostem S; w tym przypadku [0, 100, 200, 300, ... 4000]. Celem jest zmiana liczby łączników (crosslinkers) dodawanych do symulacji.
  5. Wygeneruj pliki konfiguracyjne z szablonu:
    > byn/preconfig run%04i/config.cym config.cym.tpl
    UWAGA: Powinno to stworzyć 40 plików, po jednym dla każdej wartości określonej w „range(0,4000,100)”. Nazwy plików generowanych przez Preconfig są określone przez „run%04i/config.cym”. Przy tym konkretnym kodzie Preconfig wygeneruje „run0000/config.cym”, „run0001/config.cym” itd. W rzeczywistości utworzy katalogi „run0000”, „run0001” itd. i w każdym z nich stworzy plik „config.cym”. Więcej szczegółów znajduje się w pomocy Preconfig (uruchom „byn/preconfig help”). W przypadku błędu upewnij się, że polecenie zostało wpisane dokładnie. Każdy znak ma znaczenie.
  6. Uruchom wszystkie symulacje sekwencyjnie:
    > byn/scan.py '../sim' run????
    UWAGA: Program „scan.py” wykona podane polecenie w liście wskazanych katalogów. W tym przypadku lista katalogów jest określona przez „run????”. Znak zapytania jest symbolem wieloznaczności odpowiadającym dowolnemu pojedynczemu znakowi. Zatem „run????” pasuje do każdej nazwy zaczynającej się od „run” i następującej po niej dokładnie czterech znaków. Alternatywnie można użyć „run*”, aby wygenerować taką samą listę, ponieważ „*” odpowiada dowolnemu ciągowi znaków.
    1. W przypadku problemów wykonaj to polecenie w nowym oknie terminala, aby uruchomić „sim” sekwencyjnie we wszystkich katalogach utworzonych w kroku 4.5. Odczekaj około 30 min aż proces zostanie zakończony, jednak zależy to w dużej mierze od wydajności komputera. Możesz zmniejszyć zakres obliczeń, edytując plik „config.cym”:
      run 1000 system → run 500 system
  7. Wizualizuj niektóre symulacje:
    > ./play run0010
    > ./play run0020
  8. Wygeneruj obrazy dla wszystkich symulacji:
    > byn/scan.py '../play image size=256 frame=10' run????
  9. Wygeneruj stronę podsumowującą w formacie HTML:
    > byn/make_page.py tile=5 run????
    1. Otwórz plik „page.html” w przeglądarce internetowej.

5. Tworzenie wykresu

UWAGA: W tej sekcji na podstawie wyników analizy zakresu parametrów tworzony jest wykres.

  1. Sprawdź plik wykonywalny report:
    > cd run
    > ../report network:size
    UWAGA: Dla każdej klatki w trajektorii zostanie wydrukowanych kilka komentarzy oraz dwie liczby, odpowiadające wartościom „polymer” i „surface”. Wykorzystana zostanie tylko wartość „surface” sieci (ostatnia kolumna).
    1. Ogranicz informacje konkretnie do jednej klatki, używając:
      > ../report network:size frame=10
    2. Usuń komentarze, aby ułatwić przetwarzanie danych wyjściowych:
      > ../report network:size frame=10 verbose=0
    3. Na koniec przekieruj dane wyjściowe do pliku, korzystając z funkcji potoku Unix („>”):
      > ../report network:size frame=10 verbose=0 > net.txt
    4. Wydrukuj zawartość pliku w terminalu w celu weryfikacji:
      > cat net.txt
      UWAGA: Powinny zostać wyświetlone dwie liczby. Druga z nich to powierzchnia pokryta przez sieć w 10. klatce. Aby wykonać tę samą operację we wszystkich katalogach „run”, zmień katalog:
      > cd ..
  2. Wygeneruj raport w każdym podkatalogu symulacji:
    > byn/scan.py '../report network:size frame=10 verbose=0 > net.txt' run????
    UWAGA: Ponownie, scan.py wykona polecenie ujęte w cudzysłów we wszystkich katalogach określonych przez „run????”. Polecenie to jest ostatnim z kroków 5.1. Spowoduje to utworzenie pliku „net.txt” w każdym katalogu (sprawdź „ls run????”).
  3. Przejrzyj te liczby:
    ​> byn/scan.py 'cat net.txt' run????
    1. Dodaj opcję „+”, aby połączyć nazwę katalogu z wynikiem polecenia:
      > byn/scan.py + 'cat net.txt' run????
  4. Zbierz te liczby do jednego pliku:
    > byn/scan.py + 'cat net.txt' run???? > results.txt
  5. Wyczyść plik „results.txt”, usuwając powtarzający się tekst nienumeryczny. Otwórz „result.txt” w edytorze kodu i użyj funkcji „zamień tekst”, aby usunąć wszystkie ciągi „run”. Usuń tylko trzy litery, pozostawiając liczby; „run0000” powinno zmienić się w „0000”.
    UWAGA: W ten sposób otrzymany plik powinien zawierać tylko liczby uporządkowane w trzech kolumnach.
  6. Wygeneruj wykres kurczliwości z danych w pliku „result.txt”. Użyj dowolnej metody generowania wykresów, przyjmując kolumnę 1 jako oś X i kolumnę 3 jako oś Y. Oś X opisz jako liczba sieciujących/100. Oś Y opisz jako powierzchnia (micrometer^2).
  7. Przenieś wszystkie symulacje do osobnego katalogu:
    > mkdir save1
    > mv run???? save1

6. Alternatywna metoda tworzenia wykresu

  1. Dodaj polecenie raportowania na końcu pliku „config.cym.tpl” w nowej linii po zamygającym nawiasie „}” polecenia run:
    report network:size net.txt { verbose = 0 }
  2. Wygeneruj pliki konfiguracyjne:
    > byn/preconfig run%04i/config.cym config.cym.tpl
  3. Uruchom wszystkie symulacje przy użyciu wątków równoległych:
    > byn/scan.py '../sim' run???? njobs=4
    1. Dostosuj liczbę zadań (njobs=4) w zależności od wydajności komputera. Monitoruj wykorzystanie zasobów procesora CPU, na przykład za pomocą aplikacji Monitor aktywności w systemie MacOS.
  4. Zbierz dane:
    > byn/scan.py + 'cat net.txt' run???? > results.txt
  5. Wykonaj wykres, analogicznie do kroków 5.5 i 5.6.
  6. Przenieś wszystkie poprzednie uruchomienia do osobnego katalogu:
    > mkdir save2
    > mv run???? save2

7. Ulepszony wykres z wykorzystaniem próbkowania losowego

UWAGA: Zmienna jest tutaj próbkowana przy użyciu funkcji generatora z modułu „random” języka Python.

  1. W edytorze kodu otwórz plik konfiguracyjny szablonu „config.cym.tpl”, znajdujący się w katalogu głównym. Dodaj dwie linie tuż przed frazą „new crosslinker”:
    [[num = int(random.uniform(0,4000))]]
    %[[num]] xlinkers
    Zmień również polecenie „new”, aby korzystało z tej zmiennej:
    new [[range(0,4000,100)]] crosslinker → new [[num]] crosslinker
    UWAGA: Pierwsza linia tworzy zmienną losową „num”. Druga linia wypisuje wartość parametru. Znak „%” jest istotny, ponieważ instruuje program Cytosim, aby pominął tę linię. Wkrótce „xlinkers” będzie służyć jako rozpoznawalny znacznik i musi pojawić się tylko raz w każdym pliku.
    1. Na samym końcu pliku „config.cym.tpl” upewnij się, że znajduje się instrukcja raportowania:
      report network:size net.txt { verbose = 0 }
  2. Wygeneruj pliki konfiguracyjne:
    > byn/preconfig run%04i/config.cym 42 config.cym.tpl
    UWAGA: Powinno to wygenerować 42 pliki. Liczbę tę można zwiększyć, jeśli komputer jest wystarczająco szybki. Wartości wygenerowane losowo można sprawdzić, używając narzędzia Unix „grep” do przeszukiwania plików:
    > grep xlinkers run????/config.cym
  3. Uruchom wszystkie symulacje równolegle:
    > byn/scan.py '../sim' run???? njobs=4
    UWAGA: Dostosuj liczbę zadań do wydajności komputera. Dla uzyskania najlepszych wyników zmienna „njobs” powinna być ustawiona na wartość równą liczbie rdzeni komputera.
  4. Zbierz dane za pomocą jednego polecenia:
    > byn/scan.py + 'grep xlinkers config.cym; cat net.txt' run???? > results.txt
    UWAGA: Opcja „+” programu scan.py połączy wszystkie wyniki polecenia w jednej linii. W tym przypadku polecenie składa się de facto z dwóch komend oddzielonych średnikiem (";"). Zbieranie danych można zawsze zautomatyzować za pomocą skryptu Python.
  5. Wyczyść plik. Otwórz „result.txt” w edytorze kodu. Aby upewnić się, że wszystkie dane odpowiadające jednej symulacji znajdują się w jednej linii, usuń wszystkie wystąpienia ciągu znaków „xlinkers” oraz usuń znaki „%” na początku każdej linii. Na koniec zapisz plik „result.txt”, który powinien być przejrzyście zorganizowany w trzech kolumnach wartości numerycznych.
  6. Stwórz wykres w celu przedstawienia danych, powtarzając krok 5.6, ale opisz oś X jako liczba łączników (number of crosslinkers).
  7. Zapisz zestaw danych w nowym podkatalogu:
    >mkdir set1
    > mv run???? set1/.
    > mv results.txt set1/.
  8. Oblicz kolejny zestaw danych, powtarzając kroki 7.2–7.6, a następnie powtórz krok 7.8, zastępując „set1” przez „set2” we wszystkich trzech poleceniach.
  9. Stwórz połączony wykres.
    1. Połącz dwa pliki danych:
      > cat set?/results.txt > results.txt
      UWAGA: Nowy plik „result.txt” powinien być większy.
    2. Wykreśl dane, aby utworzyć połączony wykres, zgodnie z opisem w kroku 7.7.

8. W pełni zautomatyzowany potok przetwarzania

UWAGA: W tej części wszystkie operacje wymagające ręcznej interwencji zostają zastąpione poleceniami. Dzięki temu możliwe będzie napisanie pojedynczego skryptu, który automatycznie wykona wszystkie kroki. Skrypt ten może być uruchomiony na zdalnym komputerze, na przykład w farmie obliczeniowej.

  1. Użyj polecenia Unix „sed”, aby „oczyścić” plik results.txt, zastępując krok 7.6.
    1. Usuń znak „%” z początku linii:
      > sed -e 's/%//g' results.txt > tmp.txt
    2. Usuń frazę „xlinkers”:
      > sed -e 's/xlinkers//g' tmp.txt > results.txt
  2. Napisz skrypt, który wywoła wszystkie polecenia sukcesywnie w odpowiedniej kolejności.
    1. Użyj różnych języków: bash lub Python.
    2. Utwórz plik „pipeline.bash” i skopiuj do niego wszystkie polecenia niezbędne do uruchomienia potoku przetwarzania.
    3. Uruchom skrypt:
      > bash pipeline.bash
  3. Użyj zautomatyzowanego skryptu do tworzenia wykresów.
    UWAGA: Korzystne może być całkowite wyeliminowanie ręcznej interwencji. Istnieje wiele narzędzi pozwalających na generowanie wykresów w formacie PDF bezpośrednio z pliku danych, na przykład gnuplot (http://www.gnuplot.info), PyX (https://pyx-project.org) lub Seplot (https://pypi.org/project/seplot/).

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Wyniki

W sekcji 2 pomyślna kompilacja programu Cytosim przy użyciu polecenia „make” powinna wygenerować pliki sim, play oraz report w podkatalogu „bin”. Wynik kroku 2.3 („sim info”) powinien wskazywać „Wymiar: 2" między innymiW sekcji 3 plik konfiguracyjny powinien być podobny do pliku jove.cym, dostarczonego jako Plik uzupełniający 1W sekcji 4,iObrazy uzyskane w kroku 4.8 z symulacji powinny być zbliżone do obrazu przedstawionego w Rysunek 2Strona...

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Dyskusja

Metoda opisana w niniejszym artykule opiera się na trzech niewielkich i niezależnych programach w języku Python, które były wykorzystywane w różny sposób w całym opisanym protokole. Pierwszy skrypt, preconfig, jest wszechstronnym narzędziem, które może zastąpić konieczność pisania własnych skryptów w Pythonie27. Służy on do generowania wielu plików konfiguracyjnych z jednego pliku szablonu, określając, który parametr powinien zostać zmieniony i w jaki sposób. Aby zmienić wiele parametrów,...

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Oświadczenia

Autorzy deklarują brak konfliktu interesów.

Podziękowania

Dziękujemy członkom klubu modelarskiego SLCU, szczególnie Tamsin Spelman, Renske Vroomans, Cameron Gibson, Genevieve Hines i Euan Smithers oraz innym beta testerom protokołu, Wei Xiang Chew, Danielowi Cortesowi, Ronenowi Zaidel-Barowi, Amanowi Soni, Chaitanyi Athale, Kim Bellingham-Johnstun, Serge'owi Dmitrieffowi, Gaëlle Letort i Ghislainowi de Labbey. Dziękujemy za wsparcie ze strony Fundacji Charytatywnej Gatsby (Grant PTAG-024) oraz Europejskiej Rady ds. Badań Naukowych (ERC Synergy Grant, projekt 951430).

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Materiały

Lista materiałów użytych w tym artykule
NazwaFirmaNumer katalogowyKomentarze
Plik konfiguracyjny szablonuconfig.cym.tpl
na komputerzeMacOS, Windows 10 lub Linux
https://gitlab.com/f-nedelec/cytosim.git jove.cymCytosim
make_page.pyskrypt Pythona; https://github.com/nedelec/make_page.py
preconfigSkrypt Pythona; https://github.com/nedelec/preconfig
scan.pyskrypt Pythona; https://github.com/nedelec/scan.py
osobistym ; plik konfiguracyjny

Bibliografia

  1. Chugh, P., Paluch, E. K. The actin cortex at a glance. Journal of Cell Science. 131 (14), (2018).
  2. Elliott, A., Shaw, S. L. Update: Plant cortical microtubule arrays. Plant Physiology. 176 (1), 94-105 (2018).
  3. Odde, D. J. Estimation of the diffusion-limited rate of microtubule assembly. Biophysical Journal. 73 (1), 88-96 (1997).
  4. Kerssemakers, J. W. J., et al. Assembly dynamics of microtubules at molecular resolution. Nature. 442 (7103), 709-712 (2006).
  5. Carter, N. J., Cross, R. A. Mechanics of the kinesin step. Nature. 435 (7040), 308-312 (2005).
  6. Mund, M., vander Beek, J. A., et al. Systematic nanoscale analysis of endocytosis links efficient vesicle formation to patterned actin nucleation. Cell. 174 (4), 884-896 (2018).
  7. Kikumoto, M., Kurachi, M., Tosa, V., Tashiro, H. Flexural rigidity of individual microtubules measured by a buckling force with optical traps. Biophysical Journal. 90 (5), 1687-1696 (2006).
  8. Ward, J. J., Roque, H., Antony, C., Nedelec, F. J. Mechanical design principles of a mitotic spindle. eLife. 3, 1-28 (2014).
  9. Burkhart, J. M., Vaudel, M., et al. The first comprehensive and quantitative analysis of human platelet protein composition allows the comparative analysis of structural and functional pathways. Blood. 120 (15), 73-82 (2012).
  10. Howard, J. Mechanics of Motor Proteins and the Cytoskeleton. Sinauer Associates. , Sunderland, MA. (2001).
  11. Belmonte, J. M., Leptin, M., Nedelec, F. A theory that predicts behaviors of disordered cytoskeletal networks. Molecular Systems Biology. 13 (9), 941(2017).
  12. Freedman, S. L., Banerjee, S., Hocky, G. M., Dinner, A. R. A versatile framework for simulating the dynamic mechanical structure of cytoskeletal networks. Biophysical Journal. 113 (2), 448-460 (2017).
  13. Popov, K., Komianos, J., Papoian, G. A. MEDYAN: Mechanochemical simulations of contraction and polarity alignment in actomyosin networks. PLoS Computational Biology. 12 (4), 1004877(2016).
  14. Fiorenza, S. A., Steckhahn, D. G., Betterton, M. D. Modeling spatiotemporally varying protein-protein interactions in CyLaKS, the Cytoskeleton Lattice-based Kinetic Simulator. The European Physical Journal. E, Soft Matter. 44 (8), 105-119 (2021).
  15. Yan, W., et al. aLENS: Towards the cellular-scale simulation of motor-driven cytoskeletal assemblies. arXiv. , (2021).
  16. Tam, A. K. Y., Mogilner, A., Oelz, D. B. Protein friction and filament bending facilitate contraction of disordered actomyosin networks. Biophysical Journal. 120 (18), 4029-4040 (2021).
  17. Nedelec, F. Computer simulations reveal motor properties generating stable antiparallel microtubule interactions. The Journal of Cell Biology. 158 (6), 1005-1015 (2002).
  18. Gibeaux, R., Politi, A. Z., Philippsen, P., Nedelec, F. Mechanism of nuclear movements in a multinucleated cell. Molecular Biology of the Cell. 28 (5), 567-691 (2017).
  19. De Simone, A., Nedelec, F., Gönczy, P. Dynein transmits polarized actomyosin cortical flows to promote centrosome separation. Cell Reports. 14 (9), 2250-2262 (2016).
  20. Descovich, C. P., et al. Cross-linkers both drive and brake cytoskeletal remodeling and furrowing in cytokinesis. Molecular Biology of the Cell. 29 (5), 622-631 (2018).
  21. Loughlin, R., Heald, R., Nedelec, F. A computational model predicts Xenopus meiotic spindle organization. The Journal of Cell Biology. 191 (7), 1239-1249 (2010).
  22. Kozlowski, C., Srayko, M., Nedelec, F. Cortical microtubule contacts position the spindle in C. elegans embryos. Cell. 129 (3), 499-510 (2007).
  23. Burdyniuk, M., Callegari, A., Mori, M., Nedelec, F., Lénárt, P. F-Actin nucleated on chromosomes coordinates their capture by microtubules in oocyte meiosis. The Journal of Cell Biology. 217 (8), 2661-2674 (2018).
  24. Mori, M., et al. An Arp2/3 nucleated F-actin shell fragments nuclear membranes at nuclear envelope breakdown in starfish oocytes. Current Biology. 24 (12), 1421-1428 (2014).
  25. Dmitrieff, S., Alsina, A., Mathur, A., Nedelec, F. J. Balance of microtubule stiffness and cortical tension determines the size of blood cells with marginal band across species. Proceedings of the National Academy of Sciences of the United States of America. 114 (17), 4418-4423 (2017).
  26. Nedelec, F., Foethke, D. Collective Langevin dynamics of flexible cytoskeletal fibers. New Journal of Physics. 9 (11), 499-510 (2007).
  27. Nedelec, F. preconfig: A versatile configuration file generator for varying parameters. Journal of Open Research Software. 5 (1), 9(2017).
  28. Burute, M., et al. Polarity reversal by centrosome repositioning primes cell scattering during epithelial-to-mesenchymal transition. Developmental Cell. 40 (2), 168-184 (2017).
  29. Manhart, A., Windner, S., Baylies, M., Mogilner, A. Mechanical positioning of multiple nuclei in muscle cells. PLoS Computational Biology. 14 (6), 1006208(2018).
  30. Jain, K., Khetan, N., Athale, C. A. Collective effects of yeast cytoplasmic dynein based microtubule transport. Soft Matter. 15 (7), 1571-1581 (2019).
  31. Strübing, T., et al. Wrinkling instability in 3D active nematics. Nano Letters. 20 (9), 6281-6288 (2020).
  32. Akamatsu, M., et al. Principles of self-organization and load adaptation by the actin cytoskeleton during clathrin-mediated endocytosis. eLife. 9, 49840(2020).
  33. Hirst, W. G., Biswas, A., Mahalingan, K. K., Reber, S. Differences in intrinsic tubulin dynamic properties contribute to spindle length control in Xenopus species. Current Biology. 30 (11), 2184-2190 (2020).
  34. Sobral, A. F., et al. Plastin and spectrin cooperate to stabilize the actomyosin cortex during cytokinesis. Current Biology. 31 (24), 5415-5428 (2021).
  35. Sahu, S., Herbst, L., Quinn, R., Ross, J. L. Crowder and surface effects on self-organization of microtubules. Physical Review E. 103 (6-1), 062408(2021).
  36. Gros, O. J., Damstra, H. G. J., Kapitein, L. C., Akhmanova, A., Berger, F. Dynein self-organizes while translocating the centrosome in T-cells. Molecular Biology of the Cell. 32 (9), 855-868 (2021).
  37. Serwas, D., et al. Mechanistic insights into actin force generation during vesicle formation from cryo-electron tomography. Developmental Cell. 57 (9), 1132-1145 (2022).
  38. Gittes, F., Mickey, B., Nettleton, J., Howard, J. Flexural rigidity of microtubules and actin filaments measured from thermal fluctuations in shape. The Journal of Cell Biology. 120 (4), 923-934 (1993).
  39. Guo, B., Guilford, W. H. Mechanics of actomyosin bonds in different nucleotide states are tuned to muscle contraction. Proceedings of the National Academy of Sciences of the United States of America. 103 (26), 9844-9849 (2006).
  40. Rovner, A. S., Fagnant, P. M., Trybus, K. M. Phosphorylation of a single head of smooth muscle myosin activates the whole molecule. Biochemistry. 45 (16), 5280-5289 (2006).
  41. Walcott, S., Warshaw, D. M., Debold, E. P. Mechanical coupling between myosin molecules causes differences between ensemble and single-molecule measurements. Biophysical Journal. 103 (3), 501-510 (2012).
  42. Finer, J. T., Simmons, R. M., Spudich, J. A. Single myosin molecule mechanics: piconewton forces and nanometre steps. Nature. 368 (6467), 113-119 (1994).
  43. Aratyn, Y. S., Schaus, T. E., Taylor, E. W., Borisy, G. G. Intrinsic dynamic behavior of fascin in filopodia. Molecular Biology of the Cell. 18 (10), 3928-3940 (2007).
  44. Goldmann, W. H., Isenberg, G. Analysis of filamin and alpha-actinin binding to actin by the stopped flow method. FEBS Letters. 336 (3), 408-410 (1993).

Dostęp ograniczony. Zaloguj się lub rozpocznij wersję próbną, aby wyświetlić tę treść.

Przedruki i uprawnienia

Tagi

Symulacja cytoszkieletufilamenty mikrotubularnefilamenty aktynowemotory molekularnebia ka sieciuj cesymulacja komputerowasie aktynomiozynowamodelowanie ilo cioweanaliza kurczliwo ci
Film wkrótce dostępny