Skip to content
This repository has been archived by the owner on Aug 11, 2022. It is now read-only.

Commit

Permalink
migrate
Browse files Browse the repository at this point in the history
  • Loading branch information
scivision committed Oct 9, 2017
1 parent e00a125 commit 2f050ca
Show file tree
Hide file tree
Showing 155 changed files with 800 additions and 608 deletions.
17 changes: 17 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
.gitattributes text eol=lf
.gitignore text eol=lf
Makefile text eol=lf
*.yml text eol=lf
LICENSE text eol=lf
*.ipynb text eol=lf
*.txt text eol=lf
*.py text eol=lf
*.sh text eol=lf
*.c text eol=lf
*.cpp text eol=lf
*.f text eol=lf
*.f90 text eol=lf
*.md text eol=lf
*.rst text eol=lf
*.csv text eol=lf
*.m text eol=lf
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
4 changes: 2 additions & 2 deletions transcar/dir.input/DATCAR → dir.input/DATCAR
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@ conttanh.dat input file (initial ionospheric cond
1. time step (seconds) (REAL)
1. number of seconds between fluid code outputs (seconds, REAL)
2013090 date of simulation (YYYYDDD)
32400. UT start time for simulation (seconds)
60. duration of run (seconds)
32419. UT start time for simulation (seconds)
2. duration of run (seconds)
2 jpreci, precipation type (see table below, INTEGER)
65.12,-147.43 location of simulation, geodetic latitude,longitude
0. duration of convection (in seconds) before the reference (<= 0, we do not follow the field lines) (tempsconv_1, REAL)
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
26 changes: 13 additions & 13 deletions transcar/dir.mfiles/big2little.m → dir.mfiles/big2little.m
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
function big2little(filein,fileout);

fin=fopen(filein,'r','b');

if fin>0
fout=fopen(fileout,'w','l');
a=fread(fin,'int32');
fwrite(fout,a,'int32');
fclose(fin);
fclose(fout);
else
disp(['erreur d''ouverture du fichier' filein]')
end
function big2little(filein,fileout);

fin=fopen(filein,'r','b');

if fin>0
fout=fopen(fileout,'w','l');
a=fread(fin,'int32');
fwrite(fout,a,'int32');
fclose(fin);
fclose(fout);
else
disp(['erreur d''ouverture du fichier' filein]')
end
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
120 changes: 60 additions & 60 deletions transcar/dir.mfiles/tube_path.m → dir.mfiles/tube_path.m
Original file line number Diff line number Diff line change
@@ -1,60 +1,60 @@
a=dir('*_*_*.mat');
filelist=[];
for i=1:length(a)
filelist=[filelist;a(i).name];
end
nbf=size(filelist);nbf=nbf(1);

data_path=pwd;
data_type='tra';

tube_time=[];
tubelon_time=[];
tubelat_time=[];
tubetmag_time=[];
tubelonmag_time=[];
tubelatmag_time=[];
tubeEnord_time=[];
tubeEest_time=[];

save tube tube_time tubelon_time tubelat_time ...
tubetmag_time tubelonmag_time tubelatmag_time ...
tubeEnord_time tubeEest_time
for ifile=1:nbf
file=filelist(ifile,:)
giveno
close all
load tube
ntime=length(time);
tube_time(1:ntime,ifile)=time(:);
tubelon_time(1:ntime,ifile)=lon_time(:);
tubelat_time(1:ntime,ifile)=lat_time(:);
tubetmag_time(1:ntime,ifile)=tmag_time(:);
tubelonmag_time(1:ntime,ifile)=lonmag_time(:);
tubelatmag_time(1:ntime,ifile)=latmag_time(:);
tubeEnord_time(1:ntime,ifile)=Enord_time(:);
tubeEest_time(1:ntime,ifile)=Eest_time(:);

save tube tube_time tubelon_time tubelat_time ...
tubetmag_time tubelonmag_time tubelatmag_time ...
tubeEnord_time tubeEest_time

end

i=find(~tube_time(end,:));
tube_time(end,i)=tube_time(end-1,i);
tube_time(end,i)=tube_time(end-1,i);
tubelon_time(end,i)=tubelon_time(end-1,i);
tubelat_time(end,i)=tubelat_time(end-1,i);
tubetmag_time(end,i)=tubetmag_time(end-1,i);
tubelonmag_time(end,i)=tubelonmag_time(end-1,i);
tubelatmag_time(end,i)=tubelatmag_time(end-1,i);
tubeEnord_time(end,i)=tubeEnord_time(end-1,i);
tubeEest_time(end,i)=tubeEest_time(end-1,i);

save tube tube_time tubelon_time tubelat_time ...
tubetmag_time tubelonmag_time tubelatmag_time ...
tubeEnord_time tubeEest_time

clear all
load tube
a=dir('*_*_*.mat');
filelist=[];
for i=1:length(a)
filelist=[filelist;a(i).name];
end
nbf=size(filelist);nbf=nbf(1);

data_path=pwd;
data_type='tra';

tube_time=[];
tubelon_time=[];
tubelat_time=[];
tubetmag_time=[];
tubelonmag_time=[];
tubelatmag_time=[];
tubeEnord_time=[];
tubeEest_time=[];

save tube tube_time tubelon_time tubelat_time ...
tubetmag_time tubelonmag_time tubelatmag_time ...
tubeEnord_time tubeEest_time
for ifile=1:nbf
file=filelist(ifile,:)
giveno
close all
load tube
ntime=length(time);
tube_time(1:ntime,ifile)=time(:);
tubelon_time(1:ntime,ifile)=lon_time(:);
tubelat_time(1:ntime,ifile)=lat_time(:);
tubetmag_time(1:ntime,ifile)=tmag_time(:);
tubelonmag_time(1:ntime,ifile)=lonmag_time(:);
tubelatmag_time(1:ntime,ifile)=latmag_time(:);
tubeEnord_time(1:ntime,ifile)=Enord_time(:);
tubeEest_time(1:ntime,ifile)=Eest_time(:);

save tube tube_time tubelon_time tubelat_time ...
tubetmag_time tubelonmag_time tubelatmag_time ...
tubeEnord_time tubeEest_time

end

i=find(~tube_time(end,:));
tube_time(end,i)=tube_time(end-1,i);
tube_time(end,i)=tube_time(end-1,i);
tubelon_time(end,i)=tubelon_time(end-1,i);
tubelat_time(end,i)=tubelat_time(end-1,i);
tubetmag_time(end,i)=tubetmag_time(end-1,i);
tubelonmag_time(end,i)=tubelonmag_time(end-1,i);
tubelatmag_time(end,i)=tubelatmag_time(end-1,i);
tubeEnord_time(end,i)=tubeEnord_time(end-1,i);
tubeEest_time(end,i)=tubeEest_time(end-1,i);

save tube tube_time tubelon_time tubelat_time ...
tubetmag_time tubelonmag_time tubelatmag_time ...
tubeEnord_time tubeEest_time

clear all
load tube
62 changes: 62 additions & 0 deletions dir.source/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
cmake_minimum_required(VERSION 2.8.12)
project(transcar Fortran)

add_compile_options(-march=native -Wline-truncation -g -fbacktrace)

# compiler dependent flags necessary for disk files used (sorry)
if(${CMAKE_Fortran_COMPILER_ID} MATCHES GNU)
add_compile_options(-frecord-marker=4 -std=legacy)# -Warray-bounds=2)
elseif(${CMAKE_Fortran_COMPILER_ID} MATCHES Intel)
add_compile_options(-assume byterecl)
elseif(${CMAKE_Fortran_COMPILER_ID} MATCHES PGI)
#already assumes byterecl
else()
message(WARNING "${CMAKE_Fortran_COMPILER_ID} unknown compiler type, disk options may be invalid")
endif()

set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ../..)

include_directories(dir.include)

add_executable(transconvec_13.op.out ../transconvec_13.op.f ../reacrates.f)
target_link_libraries(transconvec_13.op.out fluide numeric system proj
convec geomag transelec imm)

#---- build libraries ----------
set(c ../dir.fluide)
add_library(fluide ${c}/atmos.op.f ${c}/vent.f ${c}/msis90.f ${c}/coskhi.f ${c}/fchap.f)

set(c ../dir.numeric)
add_library(numeric ${c}/lcpfct.f ${c}/stabenerg.f90 ${c}/pas_de_temps.f
${c}/solve_ODE.f90 ${c}/balanc.f ${c}/balbak.f ${c}/elmhes.f
${c}/eltran.f ${c}/hqr2.f ${c}/cdiv.f)

set(c ../dir.system)
add_library(system ${c}/isnan.f90 ../dir.fluide/jour_mois.f ../dir.cine/misc.f)

set(c ../dir.projection)
add_library(proj ${c}/projection.f90 ${c}/val_fit.f90 ${c}/plegendr.f
${c}/coef_prec.f ${c}/coef_pot.f ${c}/coef_cour.f
${c}/precipitation.f90 ${c}/potentiel.f90
${c}/courant.f90 ../dir.cine/hardelec.f)

set(c ../dir.convection)
add_library(convec ${c}/convec.f ${c}/convec_1.f ${c}/conv_ar.f)
target_link_libraries(convec proj)

set(c ../dir.geomag)
add_library(geomag ${c}/geo2mag.f ${c}/lec_indices.f90 ${c}/ap2kp.f
${c}/magfild.f ${c}/shellig.f)

set(c ../dir.cine)
add_library(transelec ${c}/transelec.op.f ${c}/lect.f ${c}/iniflu.f
${c}/degrad.f ${c}/felin.op.f
${c}/solflux.f ${c}/trans.op.f ${c}/disort.f ${c}/cineout.op.f
${c}/linsub.f ${c}/quelle_grille.f ${c}/quel_flux.f
${c}/flux_val.f ${c}/hardion.f
${c}/dir.iri/iris12.f ${c}/dir.iri/irif12.f ${c}/dir.iri/cira86_pour_iri.f
${c}/ecr.f ${c}/prec_time.f ${c}/conduc.f
${c}/dE_dt.f ${c}/low_proton.f ${c}/prot.f)
target_link_libraries(transelec system fluide)

add_library(imm ../dir.imm/IMM2.f90 ../dir.imm/IMM_routines.f90)
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -200,7 +200,7 @@ subroutine quelle_grille(emax,nen,centE,botE,ddeng,
else
write(fic_datdeg,1075)
endif
1070 format('.true',11x,
1070 format('.true.',11x,
& 'logint: interpolation type for cross sections')
1075 format('.false.',10x,
& 'logint: interpolation type for cross sections')
Expand Down
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ subroutine convec(iyd,tu,kp,dlongeo,dlatgeo,
save dtmag,dlonmag0,dlatmag0

if (flgini) then
open(56,file='trace_conv',form='formatted',status='new')
open(56,file='trace_conv',form='formatted',status='replace')
flgini=.false.
endif

Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ subroutine Drive11(iecompteur,continu)
CC FAIT QUE Ti ET Rni DANS LE SECOND MEMBRE DE L'EQUATION
CC ELLIPTIQUE DU POTENTIEL POUR PRENDRE EN COMPTE L'EFFET
CC DES COURANTS ALIGNES".
integer*4 iecompteur
integer*4 iecompteur
logical continu
integer*4 par1,par2,par3,dpar1,dpar2,dpar3
integer*4 dpar11,dpar22,dpar33
Expand Down Expand Up @@ -96,57 +96,57 @@ subroutine Drive11(iecompteur,continu)

c open(4,file='dir.source/dir.imm/dir.in_out/Teg.lis',status='unknown')
c close(4)
ie=iecompteur
if (ie.eq.0)then
ie=iecompteur
if (ie.eq.0)then

cc open(4,file='dir.source/dir.imm/dir.in_out/donnees.dat',status='unknown')
open(4,file='dir.in_out/donnees.dat',status='unknown')
open(4,file='dir.in_out/donnees.dat',status='unknown')
cc On lit l'heure finale ou s'arrete le run
read(4,*)fheure


cc On lit les temperatures et densites du plasma
cc dans la source. On lit aussi la valeur de la moitie
cc de la ddp a travers la calotte polaire.

cc Pour les electrons, la densite rnmax et la temperature
cc emax sont:


read(4,*)rnmax
read(4,*)emax




cc Pour les ions, la densite est la meme que celle des
cc electrons et leur temperature vaut:


read(4,*)rtmax


cc La moitie de la ddp vaut:


read(4,*)phiopt


cc Si ideaele=1, on prend en compte l'effet des precipitations
cc sinon si ideaele=0 on ne le prend pas en compte:


read(4,*)ideaele


cc Si ideaion=1, on prend en compte l'effet des courants alignes
cc sinon si ideaion=0 on ne le prend pas en compte:


read(4,*)ideaion




cc Si ideapot=1, on fait varier au cours du temps le potentiel
cc sinon si ideapot =0 on ne le prend pas en compte


read(4,*)ideapot




cc On lit la valeur du compteur d'ecriture ni. On ecrit 1 fois
cc sur ni


read(4,*)ni




close(4)

heure=0.
Expand Down Expand Up @@ -331,12 +331,12 @@ subroutine Drive11(iecompteur,continu)
endif


if (fheure.lt.heure) continu=.false.
if (fheure.lt.heure) continu=.false.

c open(4,file='compteur.lis',status='unknown')
c write(4,*)ie
c write(4,*)ni
c close(4)
c close(4)

iecompteur=ie
return
Expand Down
Loading

0 comments on commit 2f050ca

Please sign in to comment.