asc26 amss-ncku initialized
This commit is contained in:
74
AMSS_NCKU_source/transpbh.C
Normal file
74
AMSS_NCKU_source/transpbh.C
Normal file
@@ -0,0 +1,74 @@
|
||||
// $Id: transpbh.C,v 1.2 2013/04/19 03:49:25 zjcao Exp $
|
||||
#ifdef newc
|
||||
#include <iostream>
|
||||
#include <iomanip>
|
||||
#include <fstream>
|
||||
#include <cstdlib>
|
||||
#include <cstdio>
|
||||
#include <string>
|
||||
#include <cmath>
|
||||
using namespace std;
|
||||
#else
|
||||
#include <iostream.h>
|
||||
#include <iomanip.h>
|
||||
#include <fstream.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <math.h>
|
||||
#endif
|
||||
|
||||
#include "macrodef.h"
|
||||
|
||||
// transmit black hole's position from bssn class
|
||||
|
||||
int BHN;
|
||||
double Mass[3];
|
||||
double PBH[9];
|
||||
|
||||
void setpbh(int iBHN, double **iPBH, double *iMass, int rBHN)
|
||||
{
|
||||
BHN = Mymax(iBHN, rBHN);
|
||||
for (int i = 0; i < iBHN; i++)
|
||||
{
|
||||
for (int j = 0; j < 3; j++)
|
||||
PBH[3 * i + j] = iPBH[i][j];
|
||||
Mass[i] = iMass[i];
|
||||
}
|
||||
if (BHN < rBHN)
|
||||
{
|
||||
if (rBHN > 2)
|
||||
cout << "error in transpbh.C: something wrong." << endl;
|
||||
else
|
||||
{
|
||||
for (int j = 0; j < 3; j++)
|
||||
PBH[3 + j] = -iPBH[0][j];
|
||||
|
||||
Mass[1] = Mass[0];
|
||||
}
|
||||
}
|
||||
}
|
||||
extern "C"
|
||||
{
|
||||
|
||||
#ifdef fortran1
|
||||
void getpbh
|
||||
#endif
|
||||
#ifdef fortran2
|
||||
void GETPBH
|
||||
#endif
|
||||
#ifdef fortran3
|
||||
void
|
||||
getpbh_
|
||||
#endif
|
||||
(int &oBHN, double *oPBH, double *oMass)
|
||||
{
|
||||
oBHN = BHN;
|
||||
for (int i = 0; i < BHN; i++)
|
||||
oMass[i] = Mass[i];
|
||||
for (int i = 0; i < 3 * BHN; i++)
|
||||
oPBH[i] = PBH[i];
|
||||
|
||||
// printf("have set BH_num = %d\n",oBHN);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user