CLSCALE ?= 0.1

all: assemble visualize

cookie.msh: cookie.geo
	gmsh -format msh2 -clscale "${CLSCALE}" -2 cookie.geo

%ookie.xml %ookie_physical_region.xml: cookie.msh
	dolfin-convert cookie.msh cookie.xml

A0%mtx A1%mtx A2%mtx A3%mtx A4%mtx B%txt C%txt E%mtx ABCE%mat: cookie.xml cookie_physical_region.xml
	python3 assemble_system.py

assemble: A0.mtx A1.mtx A2.mtx A3.mtx B.txt C.txt E.mtx ABCE.mat

U.txt output.png: A0.mtx A1.mtx A2.mtx A3.mtx B.txt C.txt E.mtx
	python3 solve_pymor.py

out%pvd out000000%vtu: U.txt
	python3 visualize_state.py

spy.png:
	python3 visualize_matrices.py

visualize: out.pvd out000000.vtu spy.png

clean:
	rm -f *.mtx \
	      B.txt \
	      C.txt \
	      U.txt \
	      ABCE.mat \
	      *.vtu \
	      out.pvd \
	      *.png \
	      cookie*.xml \
	      cookie.msh


.PHONY: assemble visualize clean
.SECONDARY:
