[CPMD-list] cpmd2cube on SunFire

Axel Kohlmeyer axel.kohlmeyer at theochem.ruhr-uni-bochum.de
Wed Feb 9 09:44:28 CET 2005


On Tue, 8 Feb 2005, Walter Langel wrote:

WL> Hi,

hi!
 
WL> has someone compiled the cpmd2cube program on a SunFire architecture and 
WL> would be so kind to send me the options for Configure or the Makefile.

yes. please try the attached makefile. you may also want 
to try to update your cpmd2cube with the attached patch.
i am not 100% certain, whether this applies cleanly to
the latest release from cpmd.org, but there should be new
release on cpmd.org any day now.

to 'port' cpmd2cube to a new platform, you usually only need
to use the same preprocessor directives compilation like
for a serial cpmd executable and then use a FFLAGS definition,
that selects compilation of free format fortran90 with preprocessing.

WL> I understand that the program has to be recompiled on every architecture 
WL> used, since it works on binaries, and that the current Configure does 
WL> not contain much Sun.

only if your binary format is not IEEE754 compliant.
you can usually read binary data from a sun, e.g. on a linux pc
when you either compile for big endian binary i/o or
use on-the-fly conversion. for more details, please see:
http://www.theochem.ruhr-uni-bochum.de/~axel.kohlmeyer/cpmd-linux.html#endian

best regards,
	axel.

WL> 
WL> Thanks
WL> 
WL> Regards
WL> 
WL> Walter Langel
WL> 
WL> 

-- 

=======================================================================
Dr. Axel Kohlmeyer   e-mail: axel.kohlmeyer at theochem.ruhr-uni-bochum.de
Lehrstuhl fuer Theoretische Chemie          Phone: ++49 (0)234/32-26673
Ruhr-Universitaet Bochum - NC 03/53         Fax:   ++49 (0)234/32-14045
D-44780 Bochum  http://www.theochem.ruhr-uni-bochum.de/~axel.kohlmeyer/
=======================================================================
If you make something idiot-proof, the universe creates a better idiot.
-------------- next part --------------
#-----------------------------------------------------------------------------#
# Makefile for cpmd2cube.x
# Configuration: SUN-ULTRA3-32bit
# Creation of Makefile: Feb  9 2005
# on Linux monteverdi.theochem.ruhr-uni-bochum.de 2.4.20-20.7 #1 Mon Aug 18 15:05:54 EDT 2003 i686 unknown
# Author: monteverdi.theochem.ruhr-uni-bochum.de!akohlmey
#----------------------------------------------------------------------------
#
SHELL = /bin/sh
#
#--------------- Configuration
FC	= f90
FFLAGS	=  -D__SUN -DFFT_DEFAULT  -fast -free -fns=no -xtarget=ultra3 -xarch=v8plusb
LFLAGS	= -xtarget=ultra3 -xarch=v8plusb -fast
LIBS	= -xlibmopt 
# uncomment and set only if needed
#CC	= cc
#CFLAGS	= 
#--------------- End of Configuration
##############

EXE	= cpmd2cube.x

OBJECTS	= \
    kinds.o periodic_table.o util.o grids.o cpmd2cube.o \
    main.o grid_types.o atom_types.o readwrites.o       \
    fftsg_lib.o fft_tools.o fftsg.o

CFGDEST = .
CFGMACH = SUN-ULTRA3-32bit
SRC=.

#############################

all:  $(EXE) trimcube

$(EXE): $(OBJECTS)
	 $(FC) -o $(EXE) $(LFLAGS) $(OBJECTS) $(LIBS)

trimcube: trimcube.o
	$(CC) $(CFLAGS) -o $@ trimcube.o 
#############################
clean:
	rm -f *.o *.mod *.L *~

# Create a new makefile with new dependencies but retain the configuration.
reconfig:
	( cd $(SRC) ; ./Configure -r -m -SRC=$(SRC) -DEST=$(CFGDEST) $(CFGMACH) ; cd $(CFGDEST) )

#############################
atom_types.o:  $(SRC)/atom_types.F
	$(FC) -c $(FFLAGS) $(SRC)/$*.F

cpmd2cube.o:   $(SRC)/cpmd2cube.F
	$(FC) -c $(FFLAGS) $(SRC)/$*.F

fft_tools.o:   $(SRC)/fft_tools.F
	$(FC) -c $(FFLAGS) $(SRC)/$*.F

grid_types.o:  $(SRC)/grid_types.F
	$(FC) -c $(FFLAGS) $(SRC)/$*.F

grids.o:       $(SRC)/grids.F
	$(FC) -c $(FFLAGS) $(SRC)/$*.F

main.o:        $(SRC)/main.F
	$(FC) -c $(FFLAGS) $(SRC)/$*.F

periodic_table.o: $(SRC)/periodic_table.F
	$(FC) -c $(FFLAGS) $(SRC)/$*.F

readwrites.o:  $(SRC)/readwrites.F
	$(FC) -c $(FFLAGS) $(SRC)/$*.F

util.o:       $(SRC)/util.F
	$(FC) -c $(FFLAGS) $(SRC)/$*.F

kinds.o:      $(SRC)/kinds.F
	$(FC) -c $(FFLAGS) $(SRC)/$*.F

fftsg.o:      $(SRC)/fftsg.F
	$(FC) -c $(FFLAGS) $(SRC)/$*.F

fftsg_lib.o:  $(SRC)/fftsg_lib.F
	$(FC) -c $(FFLAGS) $(SRC)/$*.F

trimcube.o:	$(SRC)/trimcube.c
	$(CC) -c $(CFLAGS) $(SRC)/$*.c

# Dependencies
atom_types.o:  kinds.o \
		periodic_table.o

cpmd2cube.o:   atom_types.o \
		fft_tools.o \
		grid_types.o \
		grids.o \
		kinds.o \
		periodic_table.o \
		readwrites.o \
		util.o

fft_tools.o:   grid_types.o \
		fftsg_lib.o \
		kinds.o

grid_types.o:  kinds.o

grids.o:       grid_types.o \
		kinds.o \
		util.o

main.o:        cpmd2cube.o

periodic_table.o: kinds.o

readwrites.o:  atom_types.o \
		grid_types.o \
		kinds.o

util.o:       kinds.o

-------------- next part --------------
A non-text attachment was scrubbed...
Name: cp2c-update.diff.gz
Type: application/x-gzip
Size: 14795 bytes
Desc: 
Url : http://cpmd.org/pipermail/cpmd-list/attachments/20050209/cb744067/attachment.gz 


More information about the CPMD-list mailing list