[cig-commits] r8205 - mc/3D/CitcomS/trunk/lib
tan2 at geodynamics.org
tan2 at geodynamics.org
Mon Nov 5 17:03:55 PST 2007
Author: tan2
Date: 2007-11-05 17:03:55 -0800 (Mon, 05 Nov 2007)
New Revision: 8205
Modified:
mc/3D/CitcomS/trunk/lib/Regional_obsolete.c
Log:
Removed functions related sph. harm in lib/Regional_obsolete.c
Modified: mc/3D/CitcomS/trunk/lib/Regional_obsolete.c
===================================================================
--- mc/3D/CitcomS/trunk/lib/Regional_obsolete.c 2007-11-06 01:03:35 UTC (rev 8204)
+++ mc/3D/CitcomS/trunk/lib/Regional_obsolete.c 2007-11-06 01:03:55 UTC (rev 8205)
@@ -410,159 +410,7 @@
}
-void sum_across_depth_sph(E,sphc,sphs,dest_proc)
- struct All_variables *E;
-int dest_proc;
-float *sphc,*sphs;
-{
- int jumpp,i,j,nsl,idb,to_proc,from_proc,mst,me;
-
- float *RG,*TG;
-
- MPI_Status status[100];
- MPI_Status status1;
- MPI_Request request[100];
-
- if (E->parallel.nprocz==1) return;
-
- jumpp = E->sphere.hindice;
- nsl = E->sphere.hindice*2+3;
- me = E->parallel.me;
-
- TG = ( float *)malloc((nsl+1)*sizeof(float));
- if (E->parallel.me_loc[3]==dest_proc)
- RG = ( float *)malloc((nsl+1)*sizeof(float));
-
- for (i=0;i<E->sphere.hindice;i++) {
- TG[i] = sphc[i];
- TG[i+jumpp] = sphs[i];
- }
-
-
- if (E->parallel.me_loc[3]!=dest_proc) { /* send TG */
- to_proc = E->parallel.me_sph*E->parallel.nprocz+E->parallel.nprocz-1;
- mst = me;
- MPI_Send(TG,nsl,MPI_FLOAT,to_proc,mst,E->parallel.world);
- }
-
- parallel_process_sync(E);
-
- if (E->parallel.me_loc[3]==dest_proc) {
- for (i=1;i<E->parallel.nprocz;i++) {
- from_proc = me - i;
- mst = from_proc;
- MPI_Recv(RG,nsl,MPI_FLOAT,from_proc,mst,E->parallel.world,&status1);
-
- for (j=0;j<E->sphere.hindice;j++) {
- sphc[j] += RG[j];
- sphs[j] += RG[j+jumpp];
- }
- }
- }
-
- free((void *) TG);
- if (E->parallel.me_loc[3]==dest_proc)
- free((void *) RG);
-
- return;
-}
-
-
-void sum_across_surf_sph(E,TG,loc_proc)
- struct All_variables *E;
-int loc_proc;
-float *TG;
-{
-
- int i,j,nsl,idb,to_everyone,from_proc,mst,me;
-
- float *RG[20];
-
- MPI_Status status[100];
- MPI_Status status1;
- MPI_Request request[100];
-
- if (E->parallel.nprocxy==1) return;
-
- nsl = E->sphere.hindice*2+2;
- me = E->parallel.me;
-
- for (i=1;i<E->parallel.nprocxy;i++)
- RG[i] = ( float *)malloc((nsl+1)*sizeof(float));
-
-
- idb=0;
- for (i=1;i<=E->parallel.nprocxy;i++) {
- to_everyone = E->parallel.nprocz*(i-1) + loc_proc;
-
- if (me!=to_everyone) { /* send TG */
- idb++;
- mst = me;
- MPI_Isend(TG,nsl,MPI_FLOAT,to_everyone,mst,E->parallel.world,&request[idb-1]);
- }
- }
-
- /* parallel_process_sync(E); */
-
- idb=0;
- for (i=1;i<=E->parallel.nprocxy;i++) {
- from_proc = E->parallel.nprocz*(i-1) + loc_proc;
- if (me!=from_proc) { /* me==0 receive all TG and add them up */
- mst = from_proc;
- idb++;
- MPI_Irecv(RG[idb],nsl,MPI_FLOAT,from_proc,mst,E->parallel.world,&request[idb-1]);
- }
- }
-
- MPI_Waitall(idb,request,status);
-
- for (i=1;i<E->parallel.nprocxy;i++)
- for (j=0;j<nsl; j++) {
- TG[j] += RG[i][j];
- }
-
- /* parallel_process_sync(E); */
-
- for (i=1;i<E->parallel.nprocxy;i++)
- free((void *) RG[i]);
-
- return;
-}
-
-
-void set_communication_sphereh(E)
- struct All_variables *E;
-{
- int i;
-
- i = cases[E->sphere.caps_per_proc];
-
- E->parallel.nproc_sph[1] = incases3[i].xy[0];
- E->parallel.nproc_sph[2] = incases3[i].xy[1];
-
- E->sphere.lelx = E->sphere.elx/E->parallel.nproc_sph[1];
- E->sphere.lely = E->sphere.ely/E->parallel.nproc_sph[2];
- E->sphere.lsnel = E->sphere.lely*E->sphere.lelx;
- E->sphere.lnox = E->sphere.lelx + 1;
- E->sphere.lnoy = E->sphere.lely + 1;
- E->sphere.lnsf = E->sphere.lnox*E->sphere.lnoy;
-
- for (i=0;i<=E->parallel.nprocz-1;i++)
- if (E->parallel.me_loc[3] == i) {
- E->parallel.me_sph = (E->parallel.me-i)/E->parallel.nprocz;
- E->parallel.me_loc_sph[1] = E->parallel.me_sph%E->parallel.nproc_sph[1];
- E->parallel.me_loc_sph[2] = E->parallel.me_sph/E->parallel.nproc_sph[1];
- }
-
- E->sphere.lexs = E->sphere.lelx * E->parallel.me_loc_sph[1];
- E->sphere.leys = E->sphere.lely * E->parallel.me_loc_sph[2];
-
- return;
-}
-
-
-
/* ========================================================== */
/* from Boundary_conditions.c */
/* =========================================================== */
@@ -967,43 +815,6 @@
/* ========================================================== */
-/* from Global_operations.c */
-/* =========================================================== */
-
-void sum_across_depth_sph1(E,sphc,sphs)
-struct All_variables *E;
-float *sphc,*sphs;
-{
- int jumpp,total,j,d;
- float *sphcs,*temp;
-
- temp = (float *) malloc((E->sphere.hindice*2+3)*sizeof(float));
- sphcs = (float *) malloc((E->sphere.hindice*2+3)*sizeof(float));
-
- total = E->sphere.hindice*2+3;
- jumpp = E->sphere.hindice;
- for (j=0;j<E->sphere.hindice;j++) {
- sphcs[j] = sphc[j];
- sphcs[j+jumpp] = sphs[j];
- }
-
- MPI_Allreduce(sphcs,temp,total,MPI_FLOAT,MPI_SUM,E->parallel.vertical_comm);
-
- for (j=0;j<E->sphere.hindice;j++) {
- sphc[j] = temp[j];
- sphs[j] = temp[j+jumpp];
- }
-
- MPI_Allreduce(sphcs,temp,total,MPI_FLOAT,MPI_SUM,E->parallel.vertical_comm);
-
- free((void*) temp);
- free((void*) sphcs);
-
-return;
-}
-
-
-/* ========================================================== */
/* from */
/* =========================================================== */
More information about the cig-commits
mailing list