Wie ich der Logik des Codes folge, fragen Sie jede Stammzelle, basierend auf "Wahrscheinlichkeit", ob sie teilen will.
Der Schraffurcode sieht gut aus, ich habe das ausgepackt und es wird richtig getestet: entweder finde ich einen Nachbar-Patch oder stirb.
Aber wenn deine Stammzelle beschließt, sich nicht zu teilen, sieht es für mich aus, als käme es zur zweiten [die]. Ist das dein Problem: "Weil mehr Zellen sterben als sterben sollen"?
Auch die "Setze Rasse" wird nicht benötigt, da die Luke in der Frage immer Zuchtstammzelle schaffen wird.
hat dieses Bild von Ihrem letzten Kommentar:
„Ich möchte, dass sie Art und Weise für die schraffierte Zelle, wenn möglich zu bewegen und“ ... außer, dass der Code auf dem Schlüpfling wirkt, so wirklich, die neu geschlüpfte Stammzelle macht das Bewegen, nicht das Original. Wenn das zählt.
Ich habe die gesamte Codezeile getestet, anstatt nur den überladenen Teil herauszuziehen, sehen Sie, ob das hilft. Sie benötigen Schaltflächen zum Einrichten, zur Mitose und ein Ausgabefenster zum Anzeigen der Nachrichten. Kommentare von mir im Code enthalten das ursprüngliche Ergebnis der if-Anweisung des ursprünglichen Beantworters.
breed [stemcells stemcell]
globals [
r
lambda
probability
]
to setup
clear-all
set r 0.5544
set lambda 1.233
set probability .85
create-stemcells 1
end
to mitosis
ask stemcells [
if random-float (2 * r * lambda) < 2 * r * lambda [ ;; this is superfluous, always true
ifelse random-float 1. < probability [
hatch 1 [
let free-neighbor one-of neighbors with [not any? turtles-here]
ifelse free-neighbor != nobody [
move-to free-neighbor
]
[; this die is executed if there is no free space in the neighborhood
output-show " Dead because of no free space in neighborhood"
die
]
]
;set breed stemcells ;; not necessary in an ask of stemcells
]
[;this die is executed if probablity compares to random-float and the hatch is not done
output-show " Dead because did not hatch"
die
]
]
]
e
Vielen Dank für Ihre Antwort, bezieht sich jedoch mein Problem zu dem Teil, wo die Luke auftritt. Die Zellen, die ausgebrütet sind, müssen sich auf einem eigenen Patch befinden. So würde man irgendwann die Anzahl der Zellen wachsen sehen. Diese Aussage wird absichtlich als eine wahre Aussage gesetzt und betrifft dieses Problem nicht. – Tam