<MorpheusModel version="4">
    <Description>
        <Title>M2071 Actin WavesHughesSpiral2D</Title>
        <Details>Model ID:	https://identifiers.org/morpheus/M2071
  File type:	Supplementary model
  Software:	Morpheus (open source). Download from: https://morpheus.gitlab.io
Full title:	Simplified Actin Waves in Eukaryotic Cell Motility – Spiral Waves in 2D
Authors:	J. M. Hughes and L. Edelstein-Keshet 
Submitter:	L. Edelstein-Keshet
Curator:	D. Jahn
Date:	29.10.2024
Reference:	J. Algorta, A. Fele-Paranj, J. M. Hughes, L. Edelstein-Keshet: Modeling and Simulating Single and Collective Cell Motility. Cold Spring Harb. Perspect. Biol., 2025. https://doi.org/10.1101/cshperspect.a041796
	This model reproduces the model and results obtained with Morpheus in Figure 1 of the original publication.
Comment:	PDE model for F-actin negative feedback to GTPases, and GTPase promotion of F-actin.
	u = active GTPases
	v = inactive GTPase
	F = F-actin</Details>
    </Description>
    <!--
 Define the variables and initialize their values.
 Indicate the rates of diffusion
 GTPases diffusem but F-actin does not
-->
    <Global>
        <Field symbol="u" name="Active GTPase" value="0.5">
            <Diffusion rate="0.1/dx/dx"/>
        </Field>
        <Field symbol="v" name="Inactive GTPase" value="2.5">
            <Diffusion rate="1/dx/dx"/>
        </Field>
        <Field symbol="F" name="F-actin" value="4.5 +0.7*(0.5-rand_norm(0,0.5))">
            <Diffusion rate="0.001/dx/dx"/>
        </Field>
        <!--
 Specify the method of solution and give the kinetic terms
 in the differential equations for the three variables
-->
        <System time-step="0.05" solver="Dormand-Prince [adaptive, O(5)]">
            <DiffEqn symbol-ref="u">
                <Expression> (b+gamma*u^n)*v- u*(1+s*F+u^2) </Expression>
            </DiffEqn>
            <DiffEqn symbol-ref="v">
                <Expression> -(b+gamma*u^n)*v+ u*(1+s*F+u^2) </Expression>
            </DiffEqn>
            <DiffEqn symbol-ref="F">
                <Expression> epsilon*(p0+p1*u-F)</Expression>
            </DiffEqn>
            <!--
  Define the constants and give their values.
-->
            <Constant symbol="b" name="basal activation rate" value="1.5"/>
            <Constant symbol="gamma" name="feedback rate" value="30"/>
            <Constant symbol="n" name="Hill coefficient" value="2"/>
            <Constant symbol="p1" name="GTPase dependent F-actin assembly rate" value="3.8"/>
            <Constant symbol="p0" name="F-actin basal growth rate" value="0.8"/>
            <Constant symbol="s" name="actin-dependent GTPase inactivation rate" value="10"/>
            <Constant symbol="epsilon" name="actin reaction rate" value="0.6"/>
        </System>
        <Function symbol="x">
            <Expression>dx*space.x</Expression>
        </Function>
        <Function symbol="y">
            <Expression>dx*space.y</Expression>
        </Function>
        <Constant symbol="dx" value="0.02"/>
    </Global>
    <!--
Specify the 2D Domain ("Square" lattice) and its boundary conditions
Indicate the size of each spatial box
-->
    <Space>
        <Lattice class="square">
            <Size symbol="size" value="500, 500, 0"/>
            <BoundaryConditions>
                <Condition type="periodic" boundary="x"/>
                <!--    <Disabled>
        <Condition type="periodic" boundary="y"/>
    </Disabled>
-->
            </BoundaryConditions>
            <Neighborhood>
                <Order>1</Order>
            </Neighborhood>
        </Lattice>
        <SpaceSymbol symbol="space"/>
    </Space>
    <!--
  Set the start and end time and any random seed needed
-->
    <Time>
        <StartTime value="0"/>
        <StopTime value="30"/>
        <SaveInterval value="0"/>
        <TimeSymbol symbol="time"/>
    </Time>
    <!--
 Specify how the results should be plotted
-->
    <Analysis>
        <Logger time-step="2">
            <Input>
                <Symbol symbol-ref="u"/>
                <Symbol symbol-ref="x"/>
                <Symbol symbol-ref="y"/>
            </Input>
            <Output>
                <TextOutput file-format="csv"/>
            </Output>
            <Plots>
                <Plot time-step="2">
                    <Style point-size="1.0" style="points"/>
                    <Terminal terminal="png"/>
                    <X-axis>
                        <Symbol symbol-ref="x"/>
                    </X-axis>
                    <Y-axis>
                        <Symbol symbol-ref="y"/>
                    </Y-axis>
                    <Color-bar>
                        <Symbol symbol-ref="u"/>
                    </Color-bar>
                </Plot>
            </Plots>
        </Logger>
        <ModelGraph format="dot" reduced="false" include-tags="#untagged"/>
    </Analysis>
</MorpheusModel>
