Besides
sh_type == SHT_RELA
, there also exists SHT_REL
, which would have section name .text.rel
(not present in this object file).Those represent the same
struct
, but without the addend, e.g.:typedef struct {
Elf64_Addr r_offset;
Elf64_Xword r_info;
} Elf64_Rela;
The ELF standard says that in many cases the both can be used, and it is just a matter of convenience.
To modify the nutrients as a function of time, with To select a time series we can use something like:As mentioned in
python runscripts/manual/runSim.py --variant nutrientTimeSeries 25 25
python runscripts/manual/runSim.py --help
, nutrientTimeSeries
is one of the choices from github.com/CovertLab/WholeCellEcoliRelease/blob/7e4cc9e57de76752df0f4e32eca95fb653ea64e4/models/ecoli/sim/variants/__init__.py#L5725 25
means to start from index 25 and also end at 25, so running just one simulation. 25 27
would run 25 then 26 and then 27 for example.The timeseries with index 25 is so we understand that it starts with extra amino acids in the medium, which benefit the cell, and half way through those are removed at time 1200s = 20 minutes. We would therefore expect the cell to start expressing amino acid production genes exactly at that point.
reconstruction/ecoli/flat/condition/timeseries/000025_cut_aa.tsv
and contains"time (units.s)" "nutrients"
0 "minimal_plus_amino_acids"
1200 "minimal"
nutrients
likely means condition
in that file however, see bug report with 1 1
failing: github.com/CovertLab/WholeCellEcoliRelease/issues/24When we do this the simulation ends in:so we see that the doubling time was faster than the one with minimal conditions of
Simulation finished:
- Length: 0:34:23
- Runtime: 0:08:03
0:42:49
, which makes sense, since during the first 20 minutes the cell had extra amino acid nutrients at its disposal.The output directory now contains simulation output data under
out/manual/nutrientTimeSeries_000025/
. Let's run analysis and plots for that:python runscripts/manual/analysisVariant.py &&
python runscripts/manual/analysisCohort.py --variant 25 &&
python runscripts/manual/analysisMultigen.py --variant 25 &&
python runscripts/manual/analysisSingle.py --variant 25
We can now compare the outputs of this run to the default
wildtype_000000
run from Section "Install and first run".out/manual/plotOut/svg_plots/massFractionSummary.svg
: because we now have two variants in the sameout/
folder,wildtype_000000
andnutrientTimeSeries_000025
, we now see a side by side comparision of both on the same graph!The run variant where we started with amino acids initially grows faster as expected, because the cell didn't have to make it's own amino acids, so growth is a bit more efficient.Then, at 20 minutes, which is about 0.3 hours, we see that the cell starts growing a bit less fast as the slope of the curve decreases a bit, because we removed that free amino acid supply.Figure 1. Minimal condition vs amino acid cut mass fraction plot. Source. From fileout/manual/plotOut/svg_plots/massFractionSummary.svg
.
The following plots from under
out/manual/wildtype_000000/000000/{generation_000000,nutrientTimeSeries_000025}/000000/plotOut/svg_plots
have been manually joined side-by-side with:for f in out/manual/wildtype_000000/000000/generation_000000/000000/plotOut/svg_plots/*; do
echo $f
svg_stack.py \
--direction h \
out/manual/wildtype_000000/000000/generation_000000/000000/plotOut/svg_plots/$(basename $f) \
out/manual/nutrientTimeSeries_000025/000000/generation_000000/000000/plotOut/svg_plots/$(basename $f) \
> tmp/$(basename $f)
done
Amino acid counts
. Source. aaCounts.svg
:- default: quantities just increase
- amino acid cut: there is an abrupt fall at 20 minutes when we cut off external supply, presumably because it takes some time for the cell to start producing its own
External exchange fluxes of amino acids
. Source. aaExchangeFluxes.svg
:- default: no exchanges
- amino acid cut: for all graphs except phenylalanine (PHE), either the cell was intaking the AA (negative flux), and that intake goes to 0 when the supply is cut, or the flux is always 0.For PHE however, the flux is at all times, except shortly after the cut. Why? And why there was no excretion on the default conditions?
mRNA count of highly expressed mRNAs
. Source. From file expression_rna_03_high.svg
. Each of the entries is a gene using the conventional gene naming convention of xyzW
, e.g. here's the BioCyc for the first entry, tufA
: biocyc.org/gene?orgid=ECOLI&id=EG11036, which comments Elongation factor Tu (EF-Tu) is the most abundant protein in E. coli.
In E. coli, EF-Tu is encoded by two genes, tufA and tufB
External exchange fluxes
. Source. mediaExcange.svg
: this one is similar to aaExchangeFluxes.svg
, but it also tracks other substances. The color version makes it easier to squeeze more substances in a given space, but you lose the shape of curves a bit. The title seems reversed: red must be excretion, since that's where glucose (GLC) is.The substances are different between the default and amino acid cut graphs, they seem to be the most exchanged substances. On the amino cut graph, first we see the cell intaking most (except phenylalanine, which is excreted for some reason). When we cut amino acids, the uptake of course stops.
From this we see that there is a convention of naming promoters as protein name + p, e.g. the first gene in E. Coli K-12 MG1655 promoter thrLp encodes protein
thrL
.It is also possible to add numbers after the TODO why 6 and 7? There don't appear to be 1, 2, etc.
p
, e.g. at biocyc.org/ECOLI/NEW-IMAGE?type=OPERON&object=PM0-45989 we see that the protein zur
has two promoters:zurp6
zurp7
This is the first of many love declarations and mentions EMBII makes of his partner Chiharu! This came just one day afte the very first uploads of the system.
ILoveYouMore.jpg
Message:Note that she's Japanese and not really bond, it's hair dye.
My Dearest Chiharu....I Love you more. <3 Eric
OurWedding.jpg
Message:
My Dearest Chiharu, I will love you forever. Taken Aug 6th 2014 in Ipswich, SD.
MadyBobbyOffToCollege.jpg
Associated messages:EMBII's daughter, Maddy Bobby, (presumably not with Chiharu) is going off to college! Sadface.
A #father could not ask for more perfect daughters. I #Love you both so much!! <3 PaMy oldest daugher moves into the dorms tomorrow morning. Dear Mady, You are forever my baby. <3 Pa
Chiharu EMBII and The Atom Sea say Happy Halloween.jpg
Message:so their location was: en.wikipedia.org/wiki/Fargo,_North_Dakota
#Chiharu #embii & the #AtomSea #Fargo #ND
Chiharu.jpg
Messages:and:TODO actual Italy? Or some place named Italy in the US? One of the photos is from the First Lutheran church in Fargo, Nort Dacota.
mini camera test #Wilson #Chiharu #embii #Broadway #Fargo #ND
"Trip to Italy" Mini Digital Camera N. Broadway, Fargo, ND 49°F
Loraine.jpg
"Loraine" on tx b4b8fe752a258f95b191b8c5426319ee0e8d41d5db53ea2ae18beed141cbb9bd, block 448352 (2017-01-15).
Photographer unknown, but presumably EMBII's father or another close family member.
Message:EMBII's mum died :-(
In loving memory of Loraine Elizabeth White
Cost: ~0.001 BTC ~ $0.80 at the time.
SatoFamily.jpg
This one gives Chiharu's full identity with picture basically. Message:so presumably Chiharu's full name is Chiharu Sato.
The Sato Family Arrives from Japan! Taken Aug 2. 2014 in Minneapolis MN. (Keiko, Chiharu, Hideaki, Katsuhiko) Now preparing for the Sato / Bobby Great American Vacation!!
More from their vacation:
More EMBII social media:
- bitfossil.com/5bfd6eab2df2eb615dd72172408e02e07fddba2f00fed9b80cd66c0b115ee03d/index.htm "Found on Mady's camera", EMBII wearing a funny red suit and drinking orange juice
High level simulation only, no way to get from DNA to worm! :-) Includes:
- nervous system
- muscle system
3D body viewer at: browser.openworm.org/ TODO can you click on a cell to get its name?
OpenWorm Sibernetic demo by Mike Vella (2013)
Source. Sibernetic adds a fluid dynamics solver for brain-in-the-loop simulation of C. elegans.When TLB is filled up, older addresses are overwritten. Just like CPU cache, the replacement policy is a potentially complex operation, but a simple and reasonable heuristic is to remove the least recently used entry (LRU).
With LRU, starting from state:adding
valid linear physical
----- ------ --------
> 1 00003 00005
1 00007 00009
1 00009 00001
1 0000B 00003
0000D -> 0000A
would give: valid linear physical
----- ------ --------
1 0000D 0000A
> 1 00007 00009
1 00009 00001
1 0000B 00003
The Linux Kernel reserves two zones of virtual memory:
- one for kernel memory
- one for programs
The exact split is configured by
CONFIG_VMSPLIT_...
. By default:- on 32-bit:
- the bottom 3/4 is program space:
00000000
toBFFFFFFF
- the top 1/4 is kernel memory:
C0000000
toFFFFFFFF
, like this:------------------ FFFFFFFF Kernel ------------------ C0000000 ------------------ BFFFFFFF Process ------------------ 00000000
- the bottom 3/4 is program space:
- on 64-bit: currently only 48-bits are actually used, split into two equally sized disjoint spaces. The Linux kernel just assigns:
- the bottom part to processes
00000000 00000000
to008FFFFF FFFFFFFF
- the top part to the kernel:
FFFF8000 00000000
toFFFFFFFF FFFFFFFF
, like this:------------------ FFFFFFFF Kernel ------------------ C0000000 (not addressable) ------------------ BFFFFFFF Process ------------------ 00000000
- the bottom part to processes
Kernel memory is also paged.
In previous versions, the paging was continuous, but with HIGHMEM this changed.
There is no clear physical memory split: stackoverflow.com/questions/30471742/physical-memory-userspace-kernel-split-on-linux-x86-64
FFFFF 000
points to its own physical address FFFFF 000
. This kind of translation is called an "identity mapping", and can be very convenient for OS-level debugging.Learned readers will ask themselves: so why use an unbalanced tree instead of balanced one, which offers better asymptotic times en.wikipedia.org/wiki/Self-balancing_binary_search_tree?
Likely:
- the maximum number of entries is small enough due to memory size limitations, that we won't waste too much memory with the root directory entry
- different entries would have different levels, and thus different access times
- tree rotations would likely make caching more complicated
Pros and cons of superconducting qubits by
Ciro Santilli 35 Updated 2025-04-05 +Created 1970-01-01
Introduction to Spintronics by Aurélien Manchon (2020) giant magnetoresistance section
. Source. Describes how giant magnetoresistance was used in magnetoresistive disk heads in the 90's providing a huge improvement in disk storage density over the pre-existing inductive sensors
More comments at: Video "Introduction to Spintronics by Aurélien Manchon (2020)".
There are unlisted articles, also show them or only show them.