455 HW#7 Problem 1(a)
The matrix of the linear equations for the solution amplitudes:
| > | restart:
thematrix:=evalm([[-w+B-1-D1*k^2,A^2],[-B,-w-A^2-D2*k^2]]); |
Expand the determinant, and collect by powers of w:
| > | determ:=linalg[det](thematrix);
determ:=collect(determ,w); |
Plug in parameter values of interest:
| > | A:=2.0; B:=4.6; L:=1; D1:=1.6e-3; D2:=6.0e-3; k:=n*evalf(Pi)/L; |
Find roots of quadratic for these parameter values:
| > | ws:=solve(determ=0,w); |
![]()
![]()
Make table of roots for a range of wave numbers:
| > | my_root_table:=matrix([["n","w_plus","w_minus"],
seq([n,ws[1],ws[2]],n=1..12)]); |
Observe that there are roots with positive real part (corresponding to growth) for n between 6 and 11.
The roots for n between 1 and 4 are complex (corresponding to oscillation) with negative real part (decay).
Also note all the "w_" solutions decay.
455 HW#7 Problem 1(b)
Grader will expect some kind of description or sketch of the following animations:
| > | restart:
L:=1; form_component:=n->alpha[n]*exp(Re(omega[n])*t)*cos(Im(omega[n])*t)*sin(n*Pi*x/L); omega[1]:=-.2375044967+1.947949885*I; alpha[1]:=1; omega[7]:=.2553005850; alpha[7]:=.01; omega[12]:=-.161985586; alpha[12]:=.01; dt:=.25: nt:=60: tvals:=[seq(i*dt,i=0..nt)]: pure_mode:=form_component(1); plots[display]( seq( plot(pure_mode,x=0..L,color=blue, title=convert(t,string)),t=tvals), insequence=true); |
![[Plot]](images/brusselator_mode_growth_rates_23.gif)
| > | dt:=.25: nt:=60: tvals:=[seq(i*dt,i=0..nt)]:
pure_mode:=form_component(7); plots[display]( seq( plot(pure_mode,x=0..L,color=blue, title=convert(t,string)),t=tvals), insequence=true); |
![[Plot]](images/brusselator_mode_growth_rates_25.gif)
| > | dt:=.25: nt:=60: tvals:=[seq(i*dt,i=0..nt)]:
pure_mode:=form_component(12); plots[display]( seq( plot(pure_mode,x=0..L,color=blue, title=convert(t,string)),t=tvals), insequence=true); |
![[Plot]](images/brusselator_mode_growth_rates_27.gif)
455 HW#7 Problem 1(c)
As I said in class, the behavior of the Brusselator, with the default parameters and the initial conditions
obtained by clicking "reset" to me seem predominantly a combination of the oscillatory decay of an n=1 mode,
and the monotonic growth of an n=8 mode, something like the following. There's probably also a bit of decaying
n=2 in there.
| > | omega[2]:=-.3500179870+1.814490975*I;
alpha[2]:=1; omega[8]:=.320733683; alpha[8]:=-.01; components:=[form_component(1),form_component(2),form_component(8)]; combo:=add(components[k],k=1..nops(components)); dt:=.5: nt:=30: tvals:=[seq(i*dt,i=0..nt)]: plots[display]( seq( plot([seq(components[k],k=1..nops(components))],x=0..L,color=blue),t=tvals), title="Individual components",insequence=true); plots[display]( seq( plot(combo,x=0..L),t=tvals),title="Sum of components",insequence=true); |
![]()
![]()
![[Plot]](images/brusselator_mode_growth_rates_36.gif)
![[Plot]](images/brusselator_mode_growth_rates_37.gif)
| > |
Problem 1d
We got pictures of clouds, water ripples, sand ripples, fossilized sand ripples,
fingerprints, fruit-fly embryo, tree bark, and many others.
Here are the pictures you sent me.