How pleiadian53/biomedical-app works
BindingAffinity2 is a command-line biomedical application that ranks protein–drug assignments by a name-derived binding-affinity score. The user supplies protein and drug files; preprocessing loads the names, affinity logic builds a score matrix, and the matching algorithm computes an optimal assignment that the CLI prints. Benchmarking also compares random and optimal assignments and times matching implementations. The graph follows explicit calls in sampled source; no broader capabilities are documented in the repository README.
Main entry points: affinity.py Assignment evaluation · match.py Match command · preprocess.py Input preprocessing · maxWBiMatch.py Bipartite solver
Components 8
Command-line entry
- Match command
BindingAffinity2/src/bipartite_match/match.py - Input preprocessing
BindingAffinity2/src/bipartite_match/preprocess.py
Affinity scoring
- Affinity weights
BindingAffinity2/src/bipartite_match/affinity.py - Assignment evaluation
BindingAffinity2/src/bipartite_match/affinity.py
Matching and support
- Bipartite solver
BindingAffinity2/src/bipartite_match/maxWBiMatch.py - Match timer
BindingAffinity2/src/bipartite_match/timer.py - Circular queue
BindingAffinity2/src/bipartite_match/datastruct.py
Other components
- User
Connections 8
- User → Match command: runs with inputs
BindingAffinity2/src/bipartite_match/match.py - Match command → Assignment evaluation: requests assignment
BindingAffinity2/src/bipartite_match/match.py - Assignment evaluation → Affinity weights: builds weights
BindingAffinity2/src/bipartite_match/affinity.py - Affinity weights → Input preprocessing: loads names
BindingAffinity2/src/bipartite_match/affinity.py - Assignment evaluation → Bipartite solver: solves assignment
BindingAffinity2/src/bipartite_match/affinity.py - Assignment evaluation → Match timer: times matching
BindingAffinity2/src/bipartite_match/affinity.py - Assignment evaluation → Circular queue: buffers comparisons
BindingAffinity2/src/bipartite_match/affinity.py - Match command → User: prints result
BindingAffinity2/src/bipartite_match/match.py