Most of modules organized

Most of the modules are organized in subfolders.

Maybe some big re-organization is needed in the future, but for now I am
happy.
This commit is contained in:
Jorge Gonzalez 2022-12-24 13:26:10 +01:00
commit 9484502d0b
13 changed files with 37 additions and 15 deletions

View file

@ -0,0 +1,11 @@
OBJS = moduleCompTime.o moduleCaseParam.o moduleConstParam.o \
moduleErrors.o moduleMath.o moduleParallel.o \
moduleRandom.o moduleRefParam.o moduleTable.o
all: $(OBJS)
moduleTable.o: moduleErrors.o moduleTable.f90
$(FC) $(FCFLAGS) -c $(subst .o,.f90,$@) -o $(OBJDIR)/$@
%.o: %.f90
$(FC) $(FCFLAGS) -c $< -o $(OBJDIR)/$@

View file

@ -1,5 +1,9 @@
!Information to calculate computation time
MODULE moduleCompTime
IMPLICIT NONE
PUBLIC
REAL(8):: tStep = 0.D0
REAL(8):: tPush = 0.D0
REAL(8):: tReset = 0.D0

View file

@ -0,0 +1,5 @@
all: moduleInput.o
%.o: %.f90
$(FC) $(FCFLAGS) -c $< -o $(OBJDIR)/$@

View file

@ -9,7 +9,6 @@ MODULE moduleInput
USE json_module
USE moduleErrors
USE moduleBoundary
USE moduleInject
USE moduleOutput
USE moduleMesh
IMPLICIT NONE

View file

@ -1,37 +1,40 @@
OBJS = moduleCaseParam.o moduleCompTime.o moduleList.o \
output.o moduleInput.o solver.o \
moduleCollisions.o moduleTable.o moduleParallel.o \
moduleRandom.o moduleMath.o moduleProbe.o
OBJS = common.o output.o mesh.o solver.o init.o \
moduleBoundary.o moduleCollisions.o moduleInject.o \
moduleList.o moduleProbe.o \
moduleSpecies.o
all: $(OBJS)
output.o: moduleMath.o moduleRefParam.o
common.o:
$(MAKE) -C common all
output.o: moduleSpecies.o common.o
$(MAKE) -C output all
mesh.o: moduleCollisions.o moduleBoundary.o output.o
$(MAKE) -C mesh all
solver.o: moduleSpecies.o moduleProbe.o moduleRandom.o output.o mesh.o
solver.o: moduleSpecies.o moduleProbe.o common.o output.o mesh.o
$(MAKE) -C solver all
moduleCollisions.o: moduleList.o moduleMath.o moduleRandom.o moduleTable.o moduleSpecies.o moduleRefParam.o moduleConstParam.o moduleCollisions.f90
init.o: common.o solver.o moduleInject.o
$(MAKE) -C init all
moduleBoundary.o: common.o moduleBoundary.f90
$(FC) $(FCFLAGS) -c $(subst .o,.f90,$@) -o $(OBJDIR)/$@
moduleInput.o: moduleParallel.o solver.o moduleInject.o moduleInput.f90
moduleCollisions.o: moduleList.o moduleSpecies.o common.o moduleCollisions.f90
$(FC) $(FCFLAGS) -c $(subst .o,.f90,$@) -o $(OBJDIR)/$@
moduleInject.o: moduleInject.f90
$(FC) $(FCFLAGS) -c $(subst .o,.f90,$@) -o $(OBJDIR)/$@
moduleList.o: moduleConstParam.o moduleErrors.o moduleCaseParam.o moduleSpecies.o moduleList.f90
moduleList.o: common.o moduleSpecies.o moduleList.f90
$(FC) $(FCFLAGS) -c $(subst .o,.f90,$@) -o $(OBJDIR)/$@
moduleProbe.o: mesh.o moduleProbe.f90
$(FC) $(FCFLAGS) -c $(subst .o,.f90,$@) -o $(OBJDIR)/$@
moduleBoundary.o: moduleTable.o moduleBoundary.f90
moduleSpecies.o: common.o moduleSpecies.f90
$(FC) $(FCFLAGS) -c $(subst .o,.f90,$@) -o $(OBJDIR)/$@
%.o: %.f90
$(FC) $(FCFLAGS) -c $< -o $(OBJDIR)/$@