in-silico-cancer-cell 0.1.0__tar.gz → 0.2.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (115) hide show
  1. in_silico_cancer_cell-0.2.3/.github/workflows/main.yml +48 -0
  2. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/.vscode/launch.json +9 -0
  3. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/Cargo.lock +6 -4
  4. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/Cargo.toml +3 -1
  5. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/PKG-INFO +10 -1
  6. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/README.md +6 -0
  7. in_silico_cancer_cell-0.2.3/figures/above-the-fold-screenshot.png +0 -0
  8. in_silico_cancer_cell-0.2.3/figures/results/data-vs-simulation.pdf +0 -0
  9. in_silico_cancer_cell-0.2.3/figures/results/full-simulation-current.pdf +0 -0
  10. in_silico_cancer_cell-0.2.3/figures/results/simulation-error.pdf +0 -0
  11. in_silico_cancer_cell-0.2.3/figures/results/voltage-protocol.pdf +0 -0
  12. in_silico_cancer_cell-0.2.3/figures/screenshot.png +0 -0
  13. in_silico_cancer_cell-0.2.3/literature/2024-A549-calcium-extension.pdf +18104 -29
  14. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/literature/sources.bib +13 -0
  15. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/package.json +4 -3
  16. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/poetry.lock +54 -1
  17. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/pyproject.toml +10 -1
  18. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/python/in_silico_cancer_cell/_in_rusty_silico.pyi +2 -2
  19. in_silico_cancer_cell-0.2.3/python/in_silico_cancer_cell/plot.py +56 -0
  20. in_silico_cancer_cell-0.2.3/python/in_silico_cancer_cell/utils.py +16 -0
  21. in_silico_cancer_cell-0.2.3/report/macros.tex +11 -0
  22. in_silico_cancer_cell-0.2.3/report/report.pdf +0 -0
  23. in_silico_cancer_cell-0.2.3/report/report.tex +202 -0
  24. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/src/cell.rs +25 -33
  25. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/src/channels/base.rs +47 -5
  26. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/src/channels/clc2.rs +1 -1
  27. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/src/channels/crac1.rs +1 -1
  28. in_silico_cancer_cell-0.2.3/src/channels/custom.rs +0 -0
  29. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/src/channels/kca11.rs +3 -2
  30. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/src/channels/kca31.rs +2 -1
  31. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/src/channels/kv13.rs +1 -1
  32. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/src/channels/kv31.rs +1 -1
  33. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/src/channels/kv34.rs +1 -1
  34. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/src/channels/kv71.rs +1 -1
  35. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/src/channels/task1.rs +1 -1
  36. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/src/channels/trpc6.rs +1 -1
  37. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/src/channels/trpv3.rs +3 -3
  38. in_silico_cancer_cell-0.2.3/src/constants.rs +26 -0
  39. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/src/main.rs +21 -9
  40. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/src/optimisation.rs +8 -6
  41. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/src/patchclampdata.rs +45 -7
  42. in_silico_cancer_cell-0.2.3/src/pulseprotocol.rs +134 -0
  43. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/src/utils.rs +28 -1
  44. in_silico_cancer_cell-0.2.3/tasks.py +33 -0
  45. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/yarn.lock +42 -32
  46. in_silico_cancer_cell-0.1.0/.github/workflows/main.yml +0 -30
  47. in_silico_cancer_cell-0.1.0/main.py +0 -10
  48. in_silico_cancer_cell-0.1.0/python/in_silico_cancer_cell/plot.py +0 -20
  49. in_silico_cancer_cell-0.1.0/report/report.pdf +0 -0
  50. in_silico_cancer_cell-0.1.0/report/report.tex +0 -140
  51. in_silico_cancer_cell-0.1.0/src/constants.rs +0 -22
  52. in_silico_cancer_cell-0.1.0/src/pulseprotocol.rs +0 -71
  53. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/.editorconfig +0 -0
  54. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/.github/workflows/maturin.yml +0 -0
  55. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/.gitignore +0 -0
  56. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/.pre-commit-config.yaml +0 -0
  57. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/.rustfmt.toml +0 -0
  58. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/.vscode/extensions.json +0 -0
  59. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/astro.config.mjs +0 -0
  60. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/data/experimental/mG0_1.mat +0 -0
  61. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/data/experimental/mG0_10.mat +0 -0
  62. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/data/experimental/mG0_11.mat +0 -0
  63. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/data/experimental/mG0_2.mat +0 -0
  64. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/data/experimental/mG0_3.mat +0 -0
  65. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/data/experimental/mG0_4.mat +0 -0
  66. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/data/experimental/mG0_5.mat +0 -0
  67. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/data/experimental/mG0_6.mat +0 -0
  68. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/data/experimental/mG0_7.mat +0 -0
  69. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/data/experimental/mG0_8.mat +0 -0
  70. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/data/experimental/mG0_9.mat +0 -0
  71. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/data/experimental/mG1_1.mat +0 -0
  72. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/data/experimental/mG1_2.mat +0 -0
  73. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/data/experimental/mG1_3.mat +0 -0
  74. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/data/experimental/mG1_4.mat +0 -0
  75. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/data/experimental/mG1_5.mat +0 -0
  76. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/data/experimental/patch_clamp_data.mat +0 -0
  77. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/data/experimental/time_vector_measure.mat +0 -0
  78. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/data/provision/patch_clamp_data_activation.mat +0 -0
  79. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/data/provision/patch_clamp_data_deactivation.mat +0 -0
  80. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/data/provision/patch_clamp_data_ramp.mat +0 -0
  81. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/literature/1998-potassium-channel.pdf +0 -0
  82. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/literature/2021-A549-model.pdf +0 -0
  83. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/matlab/A549 in-silico main.m +0 -0
  84. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/matlab/CLC_2.m +0 -0
  85. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/matlab/CRAC1.m +0 -0
  86. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/matlab/KCa_1_1.m +0 -0
  87. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/matlab/KCa_3_1.m +0 -0
  88. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/matlab/Kv_1_3.m +0 -0
  89. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/matlab/Kv_3_1.m +0 -0
  90. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/matlab/Kv_3_4.m +0 -0
  91. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/matlab/Kv_7_1.m +0 -0
  92. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/matlab/P_CRAC1.m +0 -0
  93. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/matlab/TASK1.m +0 -0
  94. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/matlab/TRPV_3.m +0 -0
  95. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/matlab/load_patch_clamp_data.m +0 -0
  96. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/matlab/model_evaluation.m +0 -0
  97. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/matlab/optimization.m +0 -0
  98. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/matlab/simulate_pulse_protocol.m +0 -0
  99. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/matlab/simulate_pulse_protocol_TRPC.m +0 -0
  100. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/matlab/simulate_pulse_protocol_TRPV.m +0 -0
  101. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/public/favicon.svg +0 -0
  102. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/python/in_silico_cancer_cell/__init__.py +0 -0
  103. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/python/in_silico_cancer_cell/py.typed +0 -0
  104. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/python/tests/test_all.py +0 -0
  105. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/report/.gitignore +0 -0
  106. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/report/graphics/sample-figure1.png +0 -0
  107. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/report/logos/Open_Access.eps +0 -0
  108. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/report/logos/Open_Access.pdf +0 -0
  109. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/report/logos/by.eps +0 -0
  110. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/report/logos/by.pdf +0 -0
  111. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/report/logos/dg-degruyter.eps +0 -0
  112. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/report/logos/dg-degruyter.pdf +0 -0
  113. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/rust-toolchain.toml +0 -0
  114. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/src/channels/mod.rs +0 -0
  115. {in_silico_cancer_cell-0.1.0 → in_silico_cancer_cell-0.2.3}/src/lib.rs +0 -0
@@ -0,0 +1,48 @@
1
+ name: Build Main, Frontend and Deploy
2
+ on:
3
+ push:
4
+ env:
5
+ CARGO_TERM_COLOR: always
6
+ jobs:
7
+ build:
8
+ strategy:
9
+ matrix:
10
+ include:
11
+ - target: x86_64-unknown-linux-gnu
12
+ os: ubuntu-latest
13
+ - target: x86_64-pc-windows-msvc
14
+ os: windows-latest
15
+ runs-on: ${{ matrix.os }}
16
+
17
+ steps:
18
+ - uses: actions/checkout@v4
19
+ - run: rustup toolchain install nightly --profile minimal
20
+ - uses: Swatinem/rust-cache@v2
21
+
22
+ # builds main.rs
23
+ - name: Build project
24
+ run: cargo build --release --target=${{ matrix.target }}
25
+
26
+ # builds frontend with wasm-pack
27
+ - uses: bahmutov/npm-install@v1
28
+ - run: yarn run wasm-pack build frontend --release
29
+ - run: |
30
+ cargo run --release --target=${{ matrix.target }} -- --protocol activation --phase g0 save-patch-clamp-data
31
+ cargo run --release --target=${{ matrix.target }} -- --protocol deactivation --phase g0 save-patch-clamp-data
32
+ cargo run --release --target=${{ matrix.target }} -- --protocol ramp --phase g0 save-patch-clamp-data
33
+ cargo run --release --target=${{ matrix.target }} -- --protocol activation --phase g1 save-patch-clamp-data
34
+ cargo run --release --target=${{ matrix.target }} -- --protocol deactivation --phase g1 save-patch-clamp-data
35
+ cargo run --release --target=${{ matrix.target }} -- --protocol ramp --phase g1 save-patch-clamp-data
36
+ - run: yarn run build
37
+ # deploy
38
+ - uses: jsmrcaga/action-netlify-deploy@master
39
+ # if: startsWith(github.ref, 'refs/tags/') && runner.os == 'Linux'
40
+ if: runner.os == 'Linux'
41
+ with:
42
+ NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }}
43
+ NETLIFY_SITE_ID: ${{ secrets.NETLIFY_SITE_ID }}
44
+ NETLIFY_DEPLOY_MESSAGE: "Production deploy v${{ github.ref }}"
45
+ NETLIFY_DEPLOY_TO_PROD: true
46
+ install_command: "echo Skipping..."
47
+ build_command: "echo Skipping..."
48
+ build_directory: dist/
@@ -1,6 +1,15 @@
1
1
  {
2
2
  "version": "0.2.0",
3
3
  "configurations": [
4
+ {
5
+ "type": "lldb",
6
+ "request": "launch",
7
+ "name": "Cargo launch",
8
+ "cargo": {
9
+ "args": ["build"]
10
+ },
11
+ "args": ["single"]
12
+ },
4
13
  {
5
14
  "command": "./node_modules/.bin/astro dev",
6
15
  "name": "Development server",
@@ -302,7 +302,7 @@ dependencies = [
302
302
 
303
303
  [[package]]
304
304
  name = "frontend"
305
- version = "0.1.0"
305
+ version = "0.2.3"
306
306
  dependencies = [
307
307
  "console_error_panic_hook",
308
308
  "futures",
@@ -443,15 +443,17 @@ checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea"
443
443
 
444
444
  [[package]]
445
445
  name = "in_silico_cancer_cell"
446
- version = "0.1.0"
446
+ version = "0.2.3"
447
447
  dependencies = [
448
448
  "argmin",
449
449
  "argmin-math",
450
450
  "clap",
451
+ "getrandom",
451
452
  "log",
452
453
  "matfile",
453
454
  "nalgebra",
454
455
  "pyo3",
456
+ "rand",
455
457
  "regex",
456
458
  "serde",
457
459
  "serde_json",
@@ -750,9 +752,9 @@ checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
750
752
 
751
753
  [[package]]
752
754
  name = "proc-macro2"
753
- version = "1.0.84"
755
+ version = "1.0.85"
754
756
  source = "registry+https://github.com/rust-lang/crates.io-index"
755
- checksum = "ec96c6a92621310b51366f1e28d05ef11489516e93be030060e5fc12024a49d6"
757
+ checksum = "22244ce15aa966053a896d1accb3a6e68469b97c7f33f284b99f0d576879fc23"
756
758
  dependencies = [
757
759
  "unicode-ident",
758
760
  ]
@@ -1,6 +1,6 @@
1
1
  [package]
2
2
  name = "in_silico_cancer_cell"
3
- version = "0.1.0"
3
+ version = "0.2.3"
4
4
  edition = "2021"
5
5
 
6
6
  [lib]
@@ -36,6 +36,8 @@ argmin-math = { version = "0.4.0", features = ["nalgebra_latest"], optional = tr
36
36
  serde = { version = "1.0.203", features = ["derive"], optional = true }
37
37
  serde_json = { version = "1.0.117", optional = true }
38
38
  clap = { version = "4.5.4", features = ["derive"], optional = true }
39
+ rand = "0.8.5"
40
+ getrandom = { version = "0.2.15", features = ["js"] }
39
41
 
40
42
  [profile.release]
41
43
  # This makes the compiled code faster and smaller, but it makes compiling slower,
@@ -1,14 +1,19 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: in_silico_cancer_cell
3
- Version: 0.1.0
3
+ Version: 0.2.3
4
4
  Classifier: Programming Language :: Rust
5
5
  Classifier: Programming Language :: Python :: Implementation :: CPython
6
6
  Classifier: Programming Language :: Python :: Implementation :: PyPy
7
+ Summary: Simulation of an electrophysiological A549 cancer cell model using individual ion channels across the membrane
7
8
  Requires-Python: >=3.10
8
9
  Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
10
+ Project-URL: homepage, https://in-silico-cancer-cell.waldert.at/
11
+ Project-URL: repository, https://github.com/MrP01/InSilicoCancerCell
9
12
 
10
13
  # Electrophysiological Cancer Cell Model
11
14
 
15
+ ![PyPI - Version](https://img.shields.io/pypi/v/in-silico-cancer-cell)
16
+
12
17
  Attempt to model an A549 cancer cell's ion channels using an HMM (Hidden Markov Model) and simulation of voltage + current development accross the membrane of the cell.
13
18
 
14
19
  This software comes in three flavours:
@@ -24,3 +29,7 @@ This software comes in three flavours:
24
29
 
25
30
  This computational model is based on [Langthaler et al., 2021](https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1009091): **A549 in-silico 1.0: A first computational model to simulate cell cycle dependent ion current modulation in the human lung adenocarcinoma**.
26
31
 
32
+ ## The Simulation Dashboard
33
+
34
+ ![Screenshot of the User Interface](./figures/screenshot.png)
35
+
@@ -1,5 +1,7 @@
1
1
  # Electrophysiological Cancer Cell Model
2
2
 
3
+ ![PyPI - Version](https://img.shields.io/pypi/v/in-silico-cancer-cell)
4
+
3
5
  Attempt to model an A549 cancer cell's ion channels using an HMM (Hidden Markov Model) and simulation of voltage + current development accross the membrane of the cell.
4
6
 
5
7
  This software comes in three flavours:
@@ -14,3 +16,7 @@ This software comes in three flavours:
14
16
  (Image source: [here](https://doi.org/10.1371/journal.pcbi.1009091.g002)).
15
17
 
16
18
  This computational model is based on [Langthaler et al., 2021](https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1009091): **A549 in-silico 1.0: A first computational model to simulate cell cycle dependent ion current modulation in the human lung adenocarcinoma**.
19
+
20
+ ## The Simulation Dashboard
21
+
22
+ ![Screenshot of the User Interface](./figures/screenshot.png)