Ogólna konstrukcja i wzorzec nawigacji
Aplikacja gP2S jest zorientowana na projekty, co oznacza, że encja może zostać utworzona wyłącznie w kontekście projektu. W pierwszej kolejności należy wybrać odpowiedni projekt z listy rozwijanej znajdującej się w lewym górnym rogu aplikacji. Dla wygody lista projektów jest filtrowalna i sortowana tak, aby ostatnio używane projekty wyświetlały się na górze. Po wybraniu projektu w sekcji przepływu pracy (workflow) w lewym pasku nawigacyjnym wyświetlana jest liczba encji każdego typu powiązanych z tym projektem. Użytkownik może następnie kliknąć dowolny typ encji z przepływu pracy (np. sesje mikroskopowe – Microscopy Sessions), aby wyświetlić listę tych encji w ramach wybranego projektu (Rycina 4). Lista ta zawiera dla każdej encji etykietę, datę i godzinę utworzenia, nazwę użytkownika, który ją utworzył, informację o tym, czy dodano do niej komentarze, oraz do sześciu kluczowych pól metadanych (na przykład dla każdej sesji mikroskopowej: siatkę/Grid, liczbę obrazów, czasy rozpoczęcia i zakończenia oraz informacje o użytym mikroskopie i detektorze). Wybranie jednej z wymienionych encji otwiera stronę szczegółów zawierającą wszystkie dostępne informacje na temat tego elementu, w tym zbiorczą listę wszystkich encji nadrzędnych (na przykład dla sesji mikroskopowej wymienione są nadrzędna siatka/Grid oraz próbka/Sample). Pozwala to na bardzo szybką nawigację po „pochodzeniu” encji, umożliwiając na przykład przejście jednym kliknięciem z atomowego modelu (Model) do szczegółów próbki (Sample) (Rycina 5). Ponadto do każdej encji w gP2S można dodać komentarz, wybierając opcję „Comments” w górnej prawej części strony szczegółów, wpisując dowolny tekst i opcjonalnie załączając jeden lub więcej plików.
Przygotowanie próbki
W pierwszym kroku schematu procedury należy opisać próbkę. Aby to zrobić, najpierw zdefiniuj co najmniej jeden komponent: białko lub ligand.
Dodanie nowego białka wymaga jedynie etykiety białka, jednak w celu lepszego opisania białka warto dodać PUR ID (identyfikator oczyszczania). Pole to przyjmuje dowolny tekst i może na przykład zawierać numer partii lub służyć jako miejsce na etykietę kodu kreskowego. Jeśli gP2S został dostosowany do integracji z systemem rejestracji białek (patrz sekcja Dyskusja), PUR ID może być walidowane automatycznie i wykorzystywane do pobierania oraz wyświetlania szczegółowych informacji o danej partii białka. W przypadku ligandów obowiązkowymi informacjami są etykieta oraz stężenie roztworu treściwego. Wszystkie pozostałe pola są opcjonalne i obejmują: koncepcję (kod kreskowy, powszechną nazwę lub inny identyfikator ligandu) oraz identyfikator partii. Podobnie, jeśli gP2S został skonfigurowany do integracji z systemem rejestracji ligandów, koncepcja i identyfikatory partii mogą być używane do pobierania i wyświetlania przechowywanych zewnętrznie danych opisujących ligand (np. jego strukturę chemiczną, wyniki analiz).
Próbkę definiuje dowolna kombinacja białek i ligandów oraz ich końcowe stężenia. Opcjonalnie można określić inne szczegóły eksperymentalne próbki, takie jak czas i temperatura inkubacji, bufor oraz opis protokołu w formie tekstu dowolnego.
Przygotowanie siatek
Po przygotowaniu próbki przejdź do sekcji Grids (Siatki). Na liście, pod etykietą każdej siatki, znajdują się jeden lub dwa kolorowe tagi wskazujące typ siatki (krio lub barwienie) oraz informację, czy dana siatka jest dostępna do użycia. Aby utworzyć nową siatkę, wybierz Create New Grid (Utwórz nową siatkę). Wpisz etykietę, wybierz typ siatki oraz zastosowany protokół obróbki powierzchni (np. glow discharge). Następnie określ, czy przygotowywana jest siatka do krio-EM czy do barwienia negatywnego, i wybierz jeden z prekonfigurowanych protokołów przygotowania z listy rozwijanej, która zawiera protokoły barwienia negatywnego lub protokoły witryfikacji, w zależności od wcześniej wybranego typu przygotowania siatki. Następnie wybierz odpowiednią próbkę z listy rozwijanej i użyj przełącznika, aby wskazać, czy próbka pozostaje dostępna (szczegóły opisane poniżej). W przypadku decyzji o rozcieńczeniu lub zagęszczeniu wybranej próbki, zaznacz to za pomocą przełącznika „diluted/concentrated?” i określ odpowiedni czynnik rozcieńczenia lub zagęszczenia. Podaj objętość naniesioną na siatkę (w µL) i opcjonalnie zarejestruj czas inkubacji. Na koniec określ miejsce przechowywania siatki. W przypadku siatek do barwienia negatywnego zapisz etykietę/numer pudełka przechowawczego oraz pozycję siatki w pudełku. W przypadku siatek krio najpierw wybierz urządzenie przechowawcze z listy, a następnie wprowadź informacje w dostępnych i odpowiednich polach (cylinder, probówka i/lub pudełko, w zależności od właściwości urządzenia do przechowywania krio zdefiniowanych wcześniej w ustawieniach).
Opisane powyżej elementy procesu roboczego, czyli Próbki i Siatki, stanowią część systemu zarządzania inwentarzem. Funkcja ta pozwala na śledzenie, czy poszczególne komponenty są nadal dostępne do użycia.
- Białko lub ligand może zostać oznaczone jako niedostępne na poziomie próbki. Podczas tworzenia próbki wybór opcji „ostatnia kropla” (last drop) dla dowolnego z komponentów tej próbki oznacza te komponenty jako niedostępne do dalszego użytku: nie będą one już widoczne w menu rozwijanym podczas tworzenia próbek ani nie zostaną oznaczone tagiem „Dostępne” (Available) w widoku listy.
- Wybraną próbkę można oznaczyć jako niedostępną, korzystając z jednego z dwóch przełączników – „Dostępna do przygotowania siatek?” (Available for grid-making?, w sekcji Próbki) lub „Próbka jest dostępna do dalszego użytku?” (Sample is available for further use?, w sekcji Siatki).
- Aby zarządzać dostępnością siatki, należy użyć przełącznika „Siatka zwrócona do magazynu?” (Grid returned to storage?, w sekcji Sesje Mikroskopowe). Domyślnie wartość ta jest ustawiona na „Tak” dla wszystkich siatek do barwienia negatywowego oraz na „Nie” dla siatek do krio-EM.
Gromadzenie danych
Po zarejestrowaniu siatek, zarejestruj eksperymenty gromadzenia danych poprzez utworzenie sesji mikroskopowych (Microscopy Sessions) w gP2S. Sesja mikroskopowa jest najbardziej złożonym obiektem eksperymentalnym śledzonym przez aplikację i jest ona podzielona na cztery sekcje: informacje podstawowe, ustawienia mikroskopu, ustawienia ekspozycji oraz sterowanie mikroskopem.
Pierwsza sekcja zawiera podstawowe informacje: etykietę Sesji Mikroskopowej, daty i godziny jej rozpoczęcia i zakończenia, informację o obrazowanym Gridzie, użyciu konkretnego Mikroskopu, Detektora i Uchwytu Próbki (jeśli dotyczy) oraz liczbę zebranych obrazów. Podczas tworzenia nowej Sesji Mikroskopowej system automatycznie uzupełnia datę i godzinę rozpoczęcia. Data i godzina zakończenia są opcjonalne. Wynika to z faktu, że Sesja może zostać zarejestrowana w systemie, gdy eksperyment wciąż trwa, w związku z czym czas jego zakończenia nie jest jeszcze dokładnie znany. Jeśli data i godzina zakończenia nie są znane, należy wprowadzić je ręcznie lub użyć przycisku „now”, aby wprowadzić aktualną datę i godzinę. Innym sposobem jest wykorzystanie faktu, że gP2S nie pozwala na prowadzenie więcej niż jednej niezakończonej Sesji Mikroskopowej na danym Mikroskopie. Rozpoczęcie nowej Sesji Mikroskopowej na tym samym Mikroskopie automatycznie oznacza każdą wcześniej rozpoczętą Sesję jako zakończoną.
W następnym kroku wybierz siatkę (Grid). Lista rozwijana zawiera wszystkie dostępne siatki w bieżącym projekcie. Po wybraniu siatki wyświetlone zostaną jej podstawowe informacje: kto i kiedy ją stworzył oraz jaka próbka (Sample) została do niej przypisana. W zależności od wybranego typu siatki, sesja mikroskopowa (Microscopy Session) zostanie oznaczona w widoku listy jako „stain” lub „cryo”.
Domyślnie zaznaczony jest mikroskop użyty ostatnio w bieżącym projekcie. Jeśli dany mikroskop posiada zdefiniowany mechanizm wprowadzania próbek jako autoloader, informacja ta zostanie wyświetlona jako uchwyt próbki. Jeśli jednak wybrany mikroskop wymaga użycia uchwytów z dostępu bocznym, należy wybrać odpowiedni uchwyt z listy uchwytów próbek skonfigurowanych do pracy z tym mikroskopem (jeśli wybrana siatka jest siatką kriogeniczną, wyświetlane są tylko uchwyty przystosowane do pracy w warunkach kriogenicznych).
Druga sekcja formularza Sesji Mikroskopowej zawiera informacje o ustawieniach mikroskopu, takich jak napięcia ekstrakcji i przyspieszenia, soczewka działa, średnica przysłony C2, przysłona obiektywu oraz szerokość szczeliny filtra energetycznego. Podczas rutynowego użytkowania ustawienia te są rzadko zmieniane, ponieważ użytkownicy zazwyczaj nie muszą odbiegać od wartości domyślnych.
Trzecia sekcja Sesji Mikroskopowej zawiera informacje o ustawieniach ekspozycji. W tej sekcji rejestrowane są następujące metadane: powiększenie (rozmiar piksela), rozmiar plamki, średnica obszaru oświetlonego, czas ekspozycji oraz informacja, czy użyto nanoprody, trybu liczenia, frakcjonowania dawki i superrozdzielczości (ustawienia trybu liczenia, frakcjonowania dawki i superrozdzielczości są dostępne tylko wtedy, gdy wybrany detektor posiada te funkcje). Jeśli zastosowano frakcjonowanie dawki, rejestrowana jest również liczba klatek i szybkość ekspozycji.
Dla ułatwienia szereg istotnych eksperymentalnie parametrów jest obliczanych w czasie rzeczywistym i wyświetlanych w formularzu: końcowy rozmiar piksela obrazu (Å), szybkość ekspozycji (elektrony/Å2/s), całkowita ekspozycja (elektrony/Å2), czas trwania klatki (s) oraz ekspozycja na jedną klatkę (elektron/Å2).
Czwarta i ostatnia sekcja sesji mikroskopii może służyć do zapisania minimalnego i maksymalnego docelowego niedostrojenia (underfocus) oraz liczby ekspozycji na otwór.
Chociaż sesje mikroskopii w gP2S mogą służyć do rejestracji każdego rodzaju prac mikroskopowych, niezależnie od tego, czy służą one do przesiewu, czy do gromadzenia danych, ustaliliśmy, że wystarczające i bardziej efektywne jest proszenie użytkowników o skupienie się na rejestracji sesji gromadzenia danych, a sesje przesiewowe, podczas których siatka jest jedynie krótko sprawdzana pod kątem kontroli jakości, nie muszą być koniecznie rejestrowane jako sesje mikroskopii.
Przetwarzanie obrazów
Prace nad przetwarzaniem obrazów są rejestrowane w gP2S jako encje Sesji Przetwarzania (Processing Session). Każda Sesja Przetwarzania jest powiązana z jedną lub wieloma Sesjami Mikroskopii (Microscopy Session), które należy wybrać z listy rozwijanej. Należy wskazać, jakie pakiety oprogramowania (programy i wersje) zostały wykorzystane, liczbę mikrofotografii oraz liczbę wybranych cząstek. Opcjonalnie można zapisać nazwę katalogu zawierającego wyniki przetwarzania.
Depozycja map
Po uzyskaniu jednej lub więcej rekonstrukcji trójwymiarowych, mapy mogą zostać wprowadzone do bazy gP2S. Każda mapa jest powiązana z sesją przetwarzania (Processing Session) i składa się z właściwego pliku mapy (zazwyczaj w formacie MRC, choć gP2S obsługuje dowolny typ pliku) oraz kluczowych metadanych: rozmiaru piksela (Å), zalecanego poziomu izokonturu dla renderowania powierzchni, zastosowanej symetrii, liczby obrazów wykorzystanych do stworzenia mapy oraz szacowanej rozdzielczości: w najlepszych i najgorszych obszarach, a także średniej rozdzielczości globalnej. Mapy mogą być ze sobą powiązane za pomocą następujących typów relacji: wersji filtrowanej, maskowanej, próbkowanej ponownie (resampled) lub doprecyzowanej (refined). Podczas rejestrowania takiego powiązania należy wybrać typ relacji (np. „jest filtrowaną wersją” lub „posiada wersję filtrowaną”).
Depozycja modelu
Po uzyskaniu modelu atomowego można go zdeponować w sekcji Model gP2S dla odpowiedniego projektu. Funkcja Model w pierwszej wersji gP2S jest podstawowa: poza właściwym plikiem modelu (zazwyczaj plikiem PDB lub mmCIF), wymagane są jedynie rozdzielczość (w Å) oraz Mapa (lub lista Map), na podstawie których opracowano model. Dodatkowo istnieje możliwość wskazania, że dany Model jest wersją dopracowaną wcześniej zdeponowanego Modelu. Dodatkowe funkcje, w tym walidacja modelu, są w fazie opracowywania i mogą zostać dodane do wersji open-source gP2S w przyszłości.
Raporty
Można uznać za konieczne wygenerowanie dokumentów podsumowujących do rozesłania współpracownikom, którzy mogą nie mieć dostępu do gP2S, lub do zarchiwizowania w systemie plików. gP2S zapewnia w tym celu funkcję raportowania, dostępną za pomocą ikony drukarki w prawym górnym rogu strony z widokiem szczegółów każdego obiektu. Generuje ona możliwy do wydrukowania plik PDF, który zawiera wszystkie metadane opisujące dany obiekt oraz każdy z jego obiektów nadrzędnych, w tym wszystkie komentarze. Funkcja ta jest szczególnie cenna po złożeniu Modelu (Model deposition), ponieważ wszystkie dane i metadane śledzące pochodzenie końcowego modelu atomowego, aż po konkretne serie białek i ligandów małocząsteczkowych za pośrednictwem Sesji Mikroskopowej (Microscopy Session(s)) i Siatek (Grid(s)), będą dostępne w jednym dokumencie.

Rysunek 1. Aplikacja gP2S uruchomiona na iPadzie na stole laboratoryjnym do witryfikacji. Interfejs użytkownika został zaprojektowany do obsługi za pomocą ekranów dotykowych, co ułatwia użytkowanie w laboratorium i dokładne wprowadzanie metadanych. Kliknij tutaj, aby wyświetlić powiększoną wersję tego rysunku.

Rycina 2: architektura systemu gP2S. gP2S opiera się na klasycznej organizacji trójwarstwowej i wykorzystuje dwa serwery baz danych do przechowywania danych oraz serwer LDAP do uwierzytelniania użytkowników. Kliknij tutaj, aby wyświetlić powiększoną wersję tej ryciny.

Rycina 3: Model danych gP2S. Encje przedstawiono jako prostokąty (ciemnopomarańczowe dla encji przepływu pracy, pomarańczowe dla sprzętu i protokołów, żółte dla pozostałych typów encji), a ich relacje (jeden-do-jednego, jeden-do-wielu, wiele-do-wielu) zaznaczono liniami ciągłymi. Kliknij tutaj, aby wyświetlić powiększoną wersję tej ryciny.

Rysunek 4. Widok listy sesji mikroskopowych. W tym widoku wyświetlone są wszystkie sesje mikroskopowe zarejestrowane w ramach wybranego projektu (na tym zrzucie ekranu jest to „CARD9”). Zielony lub fioletowy znacznik odróżnia sesje mikroskopowe w temperaturze pokojowej (barwienie negatywne) od sesji kriogenicznych, a po prawej stronie wymieniono kilka kluczowych metadanych opisujących każdą sesję (np. użytkownika, który ją zarejestrował). Kliknięcie nazwy sesji mikroskopowej otwiera szczegółowy widok tej sesji (szczegółowy widok modelu przedstawiono na Rysunku 5). Kliknij tutaj, aby wyświetlić powiększoną wersję tego rysunku.

Rysunek 5. Szczegółowy widok modelu.Górna część strony przedstawia dostępne metadane dla wybranego modelu. Panel komentarzy po prawej stronie można ukryć, klikając krzyżyk (w prawym górnym rogu) lub napis „Comments (1)” po jego lewej stronie. Poniżej zestaw ikon umożliwia wygenerowanie raportu PDF (ikona drukarki, patrz tekst główny), edycję wpisu (ikona ołówka) lub jego duplikację (ikona podwójnych prostokątów). Dolna część strony zawiera listę strukturalną wszystkich encji, z których wywodzi się ten model, od próbek (Samples) po mapy (Maps). Kliknij tutaj, aby wyświetlić powiększoną wersję tego rysunku.
| Nazwa biblioteki lub frameworka | Typ | Wersja |
| ApacheDS | serwer LDAP | 0.7.0 |
| Docker | narzędzie programistyczne | Proszę podać tekst źródłowy do tłumaczenia. |
| Pierwiastek | biblioteka | 1.4.10 |
| Hibernacja | biblioteka | 5.0.12 |
| Java | język programowania | 1.8+ |
| JavaScript | język programowania | EcmaScript 2017 |
| JUnit | biblioteka | 4.12 |
| Karma | biblioteka | 1.4.1 |
| Maven | narzędzie programistyczne | 3+ |
| MongoDB | serwer bazy danych | 4.0.6 |
| Baza danych MySQL | serwer bazy danych | 5.7 |
| Node.js | struktura | 6.9.1 |
| SASS (node-sass) | biblioteka | 4.5.3 |
| SpringBoot | struktura | 1.3 |
| Interfejs użytkownika Swagger (Swagger UI) | biblioteka | 2.6.1 |
| Tomcat | serwer aplikacji | 8.5.15 |
| Vue.js | ramy teoretyczne | 2.4.2 |
| vue-cli | narzędzie programistyczne | 2.6.12 |
Tabela 1. Biblioteki i frameworki wykorzystane w gP2S