1#
2# Modified by Fernando Lorenzo on 9-25-2010 to use Lapack Solver
3# Modified by Fernando Lorenzo on  April 1st 2011 to add Von Mises Stresses
4
5#***********  fortran 2 c *******************
6# Set F2C (for unix -lf2c and for MS windows if using Visual C++ to f2c.lib)
7
8F2C= -lf2c -L%%LOCALBASE%%/lib
9F2C_INCLUDE= -I%%LOCALBASE%%/include
10#  ***********  hypoplasticity ****************
11# For hypoplasticity:
12#    install f2c on your computer (also see F2C above)
13#    set HYPO_USE to 1 in tnhypo.h
14#    set HYPO_SRC to hypo.c below
15#    set HYPO_OBJ to hypo.o below
16HYPO_SRC=hypo.c
17HYPO_OBJ=hypo.o
18
19#  ***********  profiler ***********************
20# for the gnu profiler, use as follows:
21# set PROFILE to -pg
22# compile and link
23# tochnog
24# gprof tochnog > gprof.sum
25# vi gprof.sum
26#PROFILE= #-pg
27
28#  ***********  default environment *******************
29SRC_CPP=cc
30SRC_C=c
31SYS_FILE=sysother
32BCPP=-P
33VCPP=
34COMPILER_C=$(CC)
35COMPILER_CPP=$(CXX)
36COMPILER_FLAGS=$(CFLAGS) -c
37OBJ=obj
38LINK_FLAGS_BEFORE= -l$(F2C) -L%%LOCALBASE%%/lib
39LINK_FLAGS_AFTER=
40
41#  ***********  SUPERLU library *******************
42# For SUPERLU usage:
43#   1. Set SUPERLU_USE to 1 in tnsuplu.h for the sequential version
44#      Set SUPERLU_MT_USE to 1 in tnsuplu.h for the multi threaded version
45#      Set SUPERLU_DIST_USE to 1 in tnsuplu.h for the distributed MPI version
46#   2. Activate and adjust the next three lines
47#      SUPERLU= $(HOME)/Tochnog/SuperLU_4.3
48#      SUPERLU_LIB= /Users/fdolorenzo/Downloads/petsc-3.4.2/arch-darwin-c-debug/lib/
49#      libsuperlu_dist_3.3.a
50#      SUPERLU_INCLUDE=-I/Users/fdolorenzo/Downloads/petsc-3.4.2/arch-darwin-c-debug/include
51#      3. For SuperLU_MT be sure to compile a multi threaded version
52#      of Tochnog (sparc_parallel, alpha_parallel, linux, etc.
53SUPERLU=%%LOCALBASE%%
54SUPERLU_LIB=$(SUPERLU)/lib/lib%%SUPERLU%%.so %%BLAS_LIBS%%
55SUPERLU_INCLUDE=-I$(SUPERLU)/include/%%SUPERLU%%
56
57#  ***********  PetSc library *******************
58# Do NOT link together with the SUPERLU library
59# For PetSc usage:
60#   1. Activate special lines for petsc version 2.2.29 and further in so_petsc.c
61#   2. Set PETSC_DIR in your environment
62#   3. Set PETSC_USE to 1 in tnpetsc.h
63#   4. Activate the lines with PETSC_INCLUDE and PETSC_LIB
64# For PetSc + MPI usage also:
65#   5. Set MPI_USE to 1 in tnpetsc.h for distributed computing with MPI
66#   6. Replace $(PETSC_DIR)/src/sys/src/mpiuni with $(MPI_HOME)/include (or so)
67#   7. Replace -lmpiuni with -lmpich (or so)
68#   8. Take care that PETSC_DIR and PETSC_ARCH are set in your environment
69#PETSC_INCLUDE=
70#PETSC_LIB= -L/usr/local/lib -lpetsc -lmpi
71# Activate the two lines below to use the LAPACK Solver.
72
73# For other systems the blas library is at /usr/lib/-lblas or /usr/local/lib/-lblas, and
74# the lapack library normally installs at  /usr/lib/-llapack or /usr/local/lib/-liblapack
75# For OSX use both BLAS_LIB and LAPACK_LIB equal to -framework Accelerate
76
77BLAS_LIB=
78LAPACK_LIB=
79
80#
81#  ***********  All libraries *******************
82
83ALL_INCLUDE= $(PETSC_INCLUDE) $(SUPERLU_INCLUDE) $(LAPACK_INCLUDE)
84ALL_LIB=  $(LAPACK_LIB)  $(BLAS_LIB) $(F2C) -lm $(PETSC_LIB) $(SUPERLU_LIB)
85
86#  ***********  default platform  *******************
87default: freebsd_old
88
89# single and multi-processor windows; borland c++ compiler
90# set SYS_FILE above to syswin32 for multi-processor
91borland_cpp:
92	make tochnog
93	del tochnog.exe > nul
94	ren adjust.exe tochnog.exe
95
96# single processor windows; visual c++ compiler
97visual_cpp:
98	nmake tochnog \
99	"SYS_FILE=sysother" \
100	"OBJ=obj" \
101	"BCPP=" \
102	"VCPP=/Tp" \
103	"COMPILER_C=cl" \
104	"COMPILER_CPP=cl" \
105	"COMPILER_FLAGS= /c /O2 $(PROFILE)" \
106	"LINK_FLAGS_BEFORE=" \
107	"LINK_FLAGS_AFTER= /link $(F2C) $(PROFILE) /OUT:tochnog.exe"
108
109# multi processor windows; visual c++ compiler
110visual_cpp_parallel:
111	nmake tochnog \
112	"SYS_FILE=syswin32" \
113	"OBJ=obj" \
114	"BCPP=" \
115	"VCPP=/Tp" \
116	"COMPILER_C=cl" \
117	"COMPILER_CPP=cl" \
118	"COMPILER_FLAGS= /MT /c /O2 $(PROFILE)" \
119	"LINK_FLAGS_BEFORE=" \
120	"LINK_FLAGS_AFTER= /link $(F2C) $(PROFILE) /OUT:tochnog.exe"
121
122# Mac OSX; gnu gcc compiler -undefined dynamic_lookup
123# Use this option to build tochnog with code optimized for darwin-intel64bit:
124darwin-intel:
125	make tochnog \
126	"SYS_FILE=sysother" \
127	"OBJ=o" \
128	"BCPP=" \
129	"VCPP=" \
130	"COMPILER_C=gcc" \
131	"COMPILER_CPP=g++" \
132	"COMPILER_FLAGS= -O3 -g -Wconversion -Wformat  -ansi -c -Wall $(ALL_INCLUDE) $(PROFILE) " \
133	"LINK_FLAGS_BEFORE= -v  " \
134	"LINK_FLAGS_AFTER=-g -v -dynamic -undefined dynamic_lookup  $(ALL_LIB) $(PROFILE) -dynamic -lpthread -o tochnog"
135
136# single processor linux; gnu gcc compiler
137freebsd_old:
138	${MAKE} tochnog \
139	"SYS_FILE=sysother" \
140	"OBJ=o" \
141	"COMPILER_FLAGS= -c ${CFLAGS} ${CPPFLAGS} $(ALL_INCLUDE)" \
142	"LINK_FLAGS_BEFORE=" \
143	"LINK_FLAGS_AFTER= $(PROFILE) $(ALL_LIB) ${LDFLAGS} -pthread -lm -o tochnog"
144
145# Multithreaded FreeBSD
146freebsd_parallel:
147	${MAKE} tochnog \
148	"SYS_FILE=sysposix" \
149	"OBJ=o" \
150	"COMPILER_FLAGS= -c ${CFLAGS} ${CPPFLAGS} -D_REENTRANT $(ALL_INCLUDE)" \
151	"LINK_FLAGS_BEFORE=" \
152	"LINK_FLAGS_AFTER= $(PROFILE) $(ALL_LIB) ${LDFLAGS} -lpthread -lm -o tochnog"
153
154# multi processor linux; gnu gcc compiler
155linux:
156	make tochnog \
157	"SYS_FILE=sysposix" \
158	"OBJ=o" \
159	"BCPP=" \
160	"VCPP=" \
161	"COMPILER_C=gcc" \
162	"COMPILER_CPP=g++" \
163	"COMPILER_FLAGS= -ansi -c -O2 -m486 -Wall -D_REENTRANT $(PROFILE) $(ALL_INCLUDE)" \
164	"LINK_FLAGS_BEFORE=" \
165	"LINK_FLAGS_AFTER= $(PROFILE) $(ALL_LIB) -static -lm -lpthread -o tochnog"
166
167# insure check under linux; insure + gnu gcc compiler
168# set   insure++.compiler g++   in the file .psrc in your home directory
169linux_insure:
170	make tochnog \
171	"SYS_FILE=sysother" \
172	"OBJ=o" \
173	"BCPP=" \
174	"VCPP=" \
175	"COMPILER_C=gcc" \
176	"COMPILER_CPP=insure" \
177	"COMPILER_FLAGS= -ansi -g -c -Wall $(PROFILE) $(ALL_INCLUDE)" \
178	"LINK_FLAGS_BEFORE=" \
179	"LINK_FLAGS_AFTER= $(PROFILE) $(ALL_LIB) -static -lm -o tochnog"
180
181# single processor hp unix; hp CC compiler
182hp:
183	make tochnog \
184	"SYS_FILE=sysother" \
185	"OBJ=o" \
186	"BCPP=" \
187	"VCPP=" \
188	"COMPILER_FLAGS= -c -Aa -O $(PROFILE) $(ALL_INCLUDE)" \
189	"COMPILER_C=cc" \
190	"COMPILER_CPP=CC" \
191	"LINK_FLAGS_BEFORE=" \
192	"LINK_FLAGS_AFTER= $(PROFILE) $(ALL_LIB) -lm -o tochnog"
193
194# single and multi processor sgi unix; sgi CC compiler
195sgi:
196	make tochnog \
197	"SYS_FILE=syssgi" \
198	"OBJ=o" \
199	"BCPP=" \
200	"VCPP=" \
201	"COMPILER_FLAGS= -c -O2 $(PROFILE) $(ALL_INCLUDE)" \
202	"COMPILER_C=cc" \
203	"COMPILER_CPP=CC" \
204	"LINK_FLAGS_BEFORE=" \
205	"LINK_FLAGS_AFTER= $(PROFILE)  $(ALL_LIB) -lm -lmpc -o tochnog"
206
207# single processor sun solaris unix; sun CC compiler
208sparc:
209	make tochnog \
210	"SYS_FILE=sysother" \
211	"OBJ=o" \
212	"BCPP=" \
213	"VCPP=" \
214	"COMPILER_FLAGS= -w -fast -c $(PROFILE)  $(ALL_INCLUDE)" \
215	"COMPILER_C=cc" \
216	"COMPILER_CPP=CC" \
217	"LINK_FLAGS_BEFORE=" \
218	"LINK_FLAGS_AFTER= $(PROFILE) $(ALL_LIB) -lm -o tochnog"
219
220# multi processor sun solaris unix; sun CC compiler
221sparc_parallel:
222	make tochnog \
223	"SYS_FILE=sysposix" \
224	"OBJ=o" \
225	"BCPP=" \
226	"VCPP=" \
227	"COMPILER_FLAGS= -w -mt -fast -c $(PROFILE)  $(ALL_INCLUDE)" \
228	"COMPILER_C=cc" \
229	"COMPILER_CPP=CC" \
230	"LINK_FLAGS_BEFORE=-lpthread" \
231	"LINK_FLAGS_AFTER= $(PROFILE) $(ALL_LIB) -lm -o tochnog"
232
233# single processor alpha
234alpha:
235	make tochnog \
236	"SYS_FILE=sysother" \
237	"OBJ=o" \
238	"BCPP=" \
239	"VCPP=" \
240	"COMPILER_FLAGS= -O2 -c $(PROFILE) $(ALL_INCLUDE)" \
241	"COMPILER_C=cc" \
242	"COMPILER_CPP=cxx" \
243	"LINK_FLAGS_BEFORE=" \
244	"LINK_FLAGS_AFTER= $(PROFILE) $(ALL_LIB) -lm -o tochnog"
245
246# multi processor alpha
247alpha_parallel:
248	make tochnog \
249	"SYS_FILE=sysposix" \
250	"OBJ=o" \
251	"BCPP=" \
252	"VCPP=" \
253	"COMPILER_FLAGS= -O2 -pthread -D_REENTRANT -c $(PROFILE) $(ALL_INCLUDE)" \
254	"COMPILER_C=cc" \
255	"COMPILER_CPP=cxx" \
256	"LINK_FLAGS_BEFORE=-lpthread -lexc" \
257	"LINK_FLAGS_AFTER= $(PROFILE) $(ALL_LIB) -lm -o tochnog"
258
259# NOTICE THAT SINCE WE ARE USING THE LAPACK LIBRARY BUILT WITH YOUR SYSTEM, WE DO NOT
260# BUILD THE clapack.c � However, you need to have it to do eigenvalues or if you want
261# a fast solver. Most Linux applications allow you to install Lapack and Blas
262
263# In lines below I removed ---clapack.$(OBJ)
264
265tochnog: adjust.$(OBJ) area.$(OBJ) \
266	beam.$(OBJ) bounda.$(OBJ) calcul.$(OBJ) \
267	change.$(OBJ) check.$(OBJ) \
268	condif.$(OBJ) \
269	contact.$(OBJ) conspr.$(OBJ) \
270	crack.$(OBJ) create.$(OBJ) \
271	damage.$(OBJ) data.$(OBJ) date.$(OBJ) \
272	database.$(OBJ) delete.$(OBJ) distri.$(OBJ) \
273	dof.$(OBJ) elasti.$(OBJ) elem.$(OBJ) \
274	error.$(OBJ) extrude.$(OBJ) failure.$(OBJ) \
275	filter.$(OBJ) force.$(OBJ) general.$(OBJ) \
276	geometry.$(OBJ) generate.$(OBJ) \
277	groundda.$(OBJ) groundfl.$(OBJ) group.$(OBJ) \
278        hyperela.$(OBJ) $(HYPO_OBJ) \
279	hypoplas.$(OBJ) initia.$(OBJ) \
280	input.$(OBJ) integra.$(OBJ) intersec.$(OBJ) \
281	inverse.$(OBJ) locate.$(OBJ) \
282	macro.$(OBJ) map.$(OBJ) mat_diff.$(OBJ) \
283	materi.$(OBJ) math.$(OBJ) maxwell.$(OBJ) \
284	membrane.$(OBJ) merge.$(OBJ) mesh.$(OBJ) \
285	miscel.$(OBJ) new_mesh.$(OBJ) \
286	node.$(OBJ) nonloc.$(OBJ) order.$(OBJ) \
287	plasti.$(OBJ) plasti_i.$(OBJ)  \
288	point_el.$(OBJ) \
289	polynom.$(OBJ) post.$(OBJ) \
290	pri.$(OBJ) print_db.$(OBJ) \
291	print_da.$(OBJ) print_dx.$(OBJ) print_el.$(OBJ) \
292	print_gi.$(OBJ) print_g5.$(OBJ) print_g6.$(OBJ)\
293	print_gm.$(OBJ) print_hi.$(OBJ) \
294	print_pl.$(OBJ) print_ma.$(OBJ) print_rs.$(OBJ) \
295	print_te.$(OBJ) print_un.$(OBJ) print_vt.$(OBJ) \
296	project.$(OBJ) range.$(OBJ) \
297	refine_g.$(OBJ) refine_l.$(OBJ) remesh.$(OBJ) \
298	renumber.$(OBJ) repeat.$(OBJ) restart.$(OBJ) \
299	slide.$(OBJ) \
300	so.$(OBJ) so_bicg.$(OBJ) \
301	so_suplu.$(OBJ) split.$(OBJ) \
302	spring.$(OBJ) stress.$(OBJ) \
303	$(SYS_FILE).$(OBJ) tendon.$(OBJ) time.$(OBJ) tn.$(OBJ) \
304	top.$(OBJ) truss.$(OBJ) \
305	umat.$(OBJ) unknown.$(OBJ) user.$(OBJ) \
306	viscoela.$(OBJ) viscosit.$(OBJ) visconon.$(OBJ) \
307	volume.$(OBJ) wave.$(OBJ)
308	$(COMPILER_CPP) $(LINK_FLAGS_BEFORE) *.$(OBJ) $(LINK_FLAGS_AFTER)
309
310adjust.$(OBJ): adjust.$(SRC_CPP) tochnog.h
311	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)adjust.$(SRC_CPP)
312
313area.$(OBJ): area.$(SRC_CPP) tochnog.h
314	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)area.$(SRC_CPP)
315
316beam.$(OBJ): beam.$(SRC_CPP) tochnog.h
317	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)beam.$(SRC_CPP)
318
319bounda.$(OBJ): bounda.$(SRC_CPP) tochnog.h
320	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)bounda.$(SRC_CPP)
321
322calcul.$(OBJ): calcul.$(SRC_CPP) tochnog.h
323	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)calcul.$(SRC_CPP)
324
325change.$(OBJ): change.$(SRC_CPP) tochnog.h
326	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)change.$(SRC_CPP)
327
328check.$(OBJ): check.$(SRC_CPP) tochnog.h
329	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)check.$(SRC_CPP)
330
331#clapack.$(OBJ): clapack.c
332#	$(COMPILER_C) $(COMPILER_FLAGS) clapack.c
333
334condif.$(OBJ): condif.$(SRC_CPP) tochnog.h
335	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)condif.$(SRC_CPP)
336
337contact.$(OBJ): contact.$(SRC_CPP) tochnog.h
338	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)contact.$(SRC_CPP)
339
340conspr.$(OBJ): conspr.$(SRC_CPP) tochnog.h
341	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)conspr.$(SRC_CPP)
342
343crack.$(OBJ): crack.$(SRC_CPP) tochnog.h
344	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)crack.$(SRC_CPP)
345
346create.$(OBJ): create.$(SRC_CPP) tochnog.h
347	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)create.$(SRC_CPP)
348
349damage.$(OBJ): damage.$(SRC_CPP) tochnog.h
350	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)damage.$(SRC_CPP)
351
352data.$(OBJ): data.$(SRC_CPP) tochnog.h
353	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)data.$(SRC_CPP)
354
355date.$(OBJ): date.$(SRC_CPP) tochnog.h
356	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)date.$(SRC_CPP)
357
358database.$(OBJ): database.$(SRC_CPP) tochnog.h
359	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)database.$(SRC_CPP)
360
361delete.$(OBJ): delete.$(SRC_CPP) tochnog.h
362	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)delete.$(SRC_CPP)
363
364distri.$(OBJ): distri.$(SRC_CPP) tochnog.h
365	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)distri.$(SRC_CPP)
366
367dof.$(OBJ): dof.$(SRC_CPP) tochnog.h
368	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)dof.$(SRC_CPP)
369
370elasti.$(OBJ): elasti.$(SRC_CPP) tochnog.h
371	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)elasti.$(SRC_CPP)
372
373elem.$(OBJ): elem.$(SRC_CPP) tochnog.h
374	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)elem.$(SRC_CPP)
375
376error.$(OBJ): error.$(SRC_CPP) tochnog.h
377	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)error.$(SRC_CPP)
378
379extrude.$(OBJ): extrude.$(SRC_CPP) tochnog.h
380	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)extrude.$(SRC_CPP)
381
382failure.$(OBJ): failure.$(SRC_CPP) tochnog.h
383	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)failure.$(SRC_CPP)
384
385filter.$(OBJ): filter.$(SRC_CPP) tochnog.h
386	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)filter.$(SRC_CPP)
387
388force.$(OBJ): force.$(SRC_CPP) tochnog.h
389	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)force.$(SRC_CPP)
390
391general.$(OBJ): general.$(SRC_CPP) tochnog.h
392	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)general.$(SRC_CPP)
393
394generate.$(OBJ): generate.$(SRC_CPP) tochnog.h
395	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)generate.$(SRC_CPP)
396
397geometry.$(OBJ): geometry.$(SRC_CPP) tochnog.h
398	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)geometry.$(SRC_CPP)
399
400groundda.$(OBJ): groundda.$(SRC_CPP) tochnog.h
401	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)groundda.$(SRC_CPP)
402
403groundfl.$(OBJ): groundfl.$(SRC_CPP) tochnog.h
404	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)groundfl.$(SRC_CPP)
405
406group.$(OBJ): group.$(SRC_CPP) tochnog.h
407	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)group.$(SRC_CPP)
408
409hyperela.$(OBJ): hyperela.$(SRC_CPP) tochnog.h
410	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)hyperela.$(SRC_CPP)
411
412$(HYPO_OBJ): $(HYPO_SRC)
413	$(COMPILER_C) $(COMPILER_FLAGS) $(HYPO_SRC) $(F2C_INCLUDE)
414
415hypoplas.$(OBJ): hypoplas.$(SRC_CPP) tochnog.h
416	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)hypoplas.$(SRC_CPP)
417
418initia.$(OBJ): initia.$(SRC_CPP) tochnog.h
419	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)initia.$(SRC_CPP)
420
421input.$(OBJ): input.$(SRC_CPP) tochnog.h
422	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)input.$(SRC_CPP)
423
424integra.$(OBJ): integra.$(SRC_CPP) tochnog.h
425	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)integra.$(SRC_CPP)
426
427intersec.$(OBJ): intersec.$(SRC_CPP) tochnog.h
428	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)intersec.$(SRC_CPP)
429
430inverse.$(OBJ): inverse.$(SRC_CPP) tochnog.h
431	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)inverse.$(SRC_CPP)
432
433locate.$(OBJ): locate.$(SRC_CPP) tochnog.h
434	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)locate.$(SRC_CPP)
435
436macro.$(OBJ): macro.$(SRC_CPP) tochnog.h
437	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)macro.$(SRC_CPP)
438
439map.$(OBJ): map.$(SRC_CPP) tochnog.h
440	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)map.$(SRC_CPP)
441
442mat_diff.$(OBJ): mat_diff.$(SRC_CPP) tochnog.h
443	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)mat_diff.$(SRC_CPP)
444
445materi.$(OBJ): materi.$(SRC_CPP) tochnog.h
446	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)materi.$(SRC_CPP)
447
448math.$(OBJ): math.$(SRC_CPP) tochnog.h
449	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)math.$(SRC_CPP)
450
451maxwell.$(OBJ): maxwell.$(SRC_CPP) tochnog.h
452	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)maxwell.$(SRC_CPP)
453
454membrane.$(OBJ): membrane.$(SRC_CPP) tochnog.h
455	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)membrane.$(SRC_CPP)
456
457merge.$(OBJ): merge.$(SRC_CPP) tochnog.h
458	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)merge.$(SRC_CPP)
459
460mesh.$(OBJ): mesh.$(SRC_CPP) tochnog.h
461	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)mesh.$(SRC_CPP)
462
463miscel.$(OBJ): miscel.$(SRC_CPP) tochnog.h
464	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)miscel.$(SRC_CPP)
465
466new_mesh.$(OBJ): new_mesh.$(SRC_CPP) tochnog.h
467	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)new_mesh.$(SRC_CPP)
468
469node.$(OBJ): node.$(SRC_CPP) tochnog.h
470	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)node.$(SRC_CPP)
471
472nonloc.$(OBJ): nonloc.$(SRC_CPP) tochnog.h
473	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)nonloc.$(SRC_CPP)
474
475order.$(OBJ): order.$(SRC_CPP) tochnog.h
476	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)order.$(SRC_CPP)
477
478plasti.$(OBJ): plasti.$(SRC_CPP) tochnog.h
479	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)plasti.$(SRC_CPP)
480
481plasti_i.$(OBJ): plasti_i.$(SRC_CPP) tochnog.h
482	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)plasti_i.$(SRC_CPP)
483
484point_el.$(OBJ): point_el.$(SRC_CPP) tochnog.h
485	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)point_el.$(SRC_CPP)
486
487polynom.$(OBJ): polynom.$(SRC_CPP) tochnog.h
488	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)polynom.$(SRC_CPP)
489
490post.$(OBJ): post.$(SRC_CPP) tochnog.h
491	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)post.$(SRC_CPP)
492
493pri.$(OBJ): pri.$(SRC_CPP) tochnog.h
494	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)pri.$(SRC_CPP)
495
496print_db.$(OBJ): print_db.$(SRC_CPP) tochnog.h
497	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)print_db.$(SRC_CPP)
498
499print_da.$(OBJ): print_da.$(SRC_CPP) tochnog.h
500	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)print_da.$(SRC_CPP)
501
502print_dx.$(OBJ): print_dx.$(SRC_CPP) tochnog.h
503	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)print_dx.$(SRC_CPP)
504
505print_el.$(OBJ): print_el.$(SRC_CPP) tochnog.h
506	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)print_el.$(SRC_CPP)
507
508print_gi.$(OBJ): print_gi.$(SRC_CPP) tochnog.h
509	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)print_gi.$(SRC_CPP)
510
511print_g5.$(OBJ): print_g5.$(SRC_CPP) tochnog.h
512	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)print_g5.$(SRC_CPP)
513
514print_g6.$(OBJ): print_g6.$(SRC_CPP) tochnog.h
515	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)print_g6.$(SRC_CPP)
516
517print_gm.$(OBJ): print_gm.$(SRC_CPP) tochnog.h
518	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)print_gm.$(SRC_CPP)
519
520print_hi.$(OBJ): print_hi.$(SRC_CPP) tochnog.h
521	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)print_hi.$(SRC_CPP)
522
523print_ma.$(OBJ): print_ma.$(SRC_CPP) tochnog.h
524	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)print_ma.$(SRC_CPP)
525
526print_pl.$(OBJ): print_pl.$(SRC_CPP) tochnog.h
527	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)print_pl.$(SRC_CPP)
528
529print_rs.$(OBJ): print_rs.$(SRC_CPP) tochnog.h
530	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)print_rs.$(SRC_CPP)
531
532print_te.$(OBJ): print_te.$(SRC_CPP) tochnog.h
533	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)print_te.$(SRC_CPP)
534
535print_un.$(OBJ): print_un.$(SRC_CPP) tochnog.h
536	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)print_un.$(SRC_CPP)
537
538print_vt.$(OBJ): print_vt.$(SRC_CPP) tochnog.h
539	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)print_vt.$(SRC_CPP)
540
541project.$(OBJ): project.$(SRC_CPP) tochnog.h
542	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)project.$(SRC_CPP)
543
544range.$(OBJ): range.$(SRC_CPP) tochnog.h
545	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)range.$(SRC_CPP)
546
547refine_g.$(OBJ): refine_g.$(SRC_CPP) tochnog.h
548	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)refine_g.$(SRC_CPP)
549
550refine_l.$(OBJ): refine_l.$(SRC_CPP) tochnog.h
551	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)refine_l.$(SRC_CPP)
552
553remesh.$(OBJ): remesh.$(SRC_CPP) tochnog.h
554	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)remesh.$(SRC_CPP)
555
556renumber.$(OBJ): renumber.$(SRC_CPP) tochnog.h
557	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)renumber.$(SRC_CPP)
558
559repeat.$(OBJ): repeat.$(SRC_CPP) tochnog.h
560	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)repeat.$(SRC_CPP)
561
562restart.$(OBJ): restart.$(SRC_CPP) tochnog.h
563	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)restart.$(SRC_CPP)
564
565slide.$(OBJ): slide.$(SRC_CPP) tochnog.h
566	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)slide.$(SRC_CPP)
567
568so.$(OBJ): so.$(SRC_CPP) tochnog.h
569	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)so.$(SRC_CPP)
570
571so_bicg.$(OBJ): so_bicg.$(SRC_CPP) tochnog.h
572	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)so_bicg.$(SRC_CPP)
573
574#so_petsc.$(OBJ): so_petsc.$(SRC_C) tochnog.h
575#	$(COMPILER_C) $(COMPILER_FLAGS) so_petsc.$(SRC_C)
576
577so_suplu.$(OBJ): so_suplu.$(SRC_C) tochnog.h
578	$(COMPILER_C) $(COMPILER_FLAGS) so_suplu.$(SRC_C)
579
580split.$(OBJ): split.$(SRC_CPP) tochnog.h
581	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)split.$(SRC_CPP)
582
583spring.$(OBJ): spring.$(SRC_CPP) tochnog.h
584	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)spring.$(SRC_CPP)
585
586stress.$(OBJ): stress.$(SRC_CPP) tochnog.h
587	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)stress.$(SRC_CPP)
588
589$(SYS_FILE).$(OBJ): $(SYS_FILE).$(SRC_CPP) tochnog.h
590	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)$(SYS_FILE).$(SRC_CPP)
591
592tendon.$(OBJ): tendon.$(SRC_CPP) tochnog.h
593	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)tendon.$(SRC_CPP)
594
595time.$(OBJ): time.$(SRC_CPP) tochnog.h
596	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)time.$(SRC_CPP)
597
598tn.$(OBJ): tn.$(SRC_CPP) tochnog.h
599	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)tn.$(SRC_CPP)
600
601top.$(OBJ): top.$(SRC_CPP) tochnog.h
602	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)top.$(SRC_CPP)
603
604truss.$(OBJ): truss.$(SRC_CPP) tochnog.h
605	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)truss.$(SRC_CPP)
606
607umat.$(OBJ): umat.c
608	$(COMPILER_C) $(COMPILER_FLAGS) umat.c
609
610unknown.$(OBJ): unknown.$(SRC_CPP) tochnog.h
611	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)unknown.$(SRC_CPP)
612
613user.$(OBJ): user.$(SRC_CPP) tochnog.h
614	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)user.$(SRC_CPP)
615
616viscoela.$(OBJ): viscoela.$(SRC_CPP) tochnog.h
617	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)viscoela.$(SRC_CPP)
618
619visconon.$(OBJ): visconon.$(SRC_CPP) tochnog.h
620	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)visconon.$(SRC_CPP)
621
622viscosit.$(OBJ): viscosit.$(SRC_CPP) tochnog.h
623	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)viscosit.$(SRC_CPP)
624
625volume.$(OBJ): volume.$(SRC_CPP) tochnog.h
626	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)volume.$(SRC_CPP)
627
628wave.$(OBJ): wave.$(SRC_CPP) tochnog.h
629	$(COMPILER_CPP) $(COMPILER_FLAGS) $(BCPP) $(VCPP)wave.$(SRC_CPP)
630
631clean:
632	rm -f hip hop tmp.* *.log *.dbs *.aux *.his *.inp *.ps *tngid* *flavia* batch* *.phy *.bon *.cmd *.inp *.dx *.tmp *.inp *.rgb *.jpg *.attr *.plt *.scr *.out *.dvd *.vtk vtn* *.o *.0
633