Acoustic Solution main function. The solution is evaluated and output files are printed.
36 DOUBLE delome,delsig,sigma,omega;
62 if(0.0 == delome ) delome = 0.0;
65 if(0.0 == delsig ) delsig = 0.0;
83 for(j=0;j<nphiu;j++)
bc.
lambda[j] = 1.0;
135 #ifdef _ACOUSTO_DEBUG 136 sprintf(fname,
"checkcast.%d",
rank);
138 file = fopen(fname,
"w");
168 f = fopen(fname,
"w+");
176 f = fopen(fname,
"w+");
193 cfreq = sigma + I*omega;
197 logger(
LOG_INFO,
"ifreq = %d, s=(%f +i %f), f=%f Hz\n",ifreq,(
double)
CREAL(cfreq),(
double)
CIMAG(cfreq),(
double)(0.5*omega/(
PI)));
203 MPI_Bcast(&
bc.
nlambda ,1 ,MPI_INT,0,MPI_COMM_WORLD);
204 MPI_Bcast(&
bc.
ngamma ,1 ,MPI_INT,0,MPI_COMM_WORLD);
205 MPI_Bcast(&
bc.
nfunc ,1 ,MPI_INT,0,MPI_COMM_WORLD);
206 MPI_Bcast(&
bc.
ng ,1 ,MPI_INT,0,MPI_COMM_WORLD);
239 logger(
LOG_INFO,
"Skipping evaluation, reading solution from file %s. on master node\n",fsolname);
244 logger(
LOG_INFO,
"Solution read on master node. Broadcasting to nodes\n");
257 if(mysqlinfo->active){
268 f = fopen(fname,
"a");
280 f = fopen(fname,
"a");
void pre_mic_coef(COMPLEX cfreq, int icounter)
Definition: pre_mic.c:337
void eval_phinc(COMPLEX cfreq, int icounter)
Definition: nrwash.c:55
int * i_freqresp_cnt
Definition: structs.h:610
#define Vec
Definition: types.h:63
const char * title
Definition: structs.h:135
int nlambda
Definition: structs.h:618
int ncntr
Definition: structs.h:299
int nimped
Definition: structs.h:450
COMPLEX amplitude
Definition: structs.h:537
void fr_print_pre_mic(FILE *file, int imic, int icounter, COMPLEX cfreq)
Definition: print_solution.c:151
void read_solution(char *fname)
Definition: read_solution.c:33
void vtkoutmu2(int icounter, COMPLEX cfreq)
Definition: vtkout_mu2.c:42
MPI_Datatype mpi_complex
Definition: globals.h:93
struct acoustic_point * planw
Definition: structs.h:575
#define CREAL(x)
Definition: functions.h:49
int * i_freqresp_mic
Definition: structs.h:612
DOUBLE minsig
Definition: structs.h:480
int nfunc
Definition: structs.h:620
#define f1I5F
Definition: formats.h:75
void vtkoutmmesh(int icounter, COMPLEX cfreq)
Definition: vtkout_mmesh.c:44
void printsol_on_master(int icounter, COMPLEX cfreq)
Definition: print_solution.c:32
#define MPI_ACOUSTO_COMPLEX
Definition: types.h:56
Definition: structs.h:430
void get_filename(char *filename, const char *format,...)
Definition: utils.c:59
int ndipoles
Definition: structs.h:503
vector struct to hold triplets.
Definition: structs.h:29
int nsourc
Definition: structs.h:448
Definition: structs.h:540
int n_freqresp_mic
Definition: structs.h:499
#define CIMAG(x)
Definition: functions.h:50
COMPLEX * lambda
Definition: structs.h:623
int nchief
Definition: structs.h:301
DOUBLE maxome
Definition: structs.h:466
COMPLEX * sol
Definition: structs.h:607
struct dipole * dipoles
Definition: structs.h:563
BOOL onlyrep
Definition: structs.h:526
#define LOG_INFO
Definition: logger.h:26
struct bc_struct bc
Definition: globals.h:54
int nsig
Definition: structs.h:456
int n_freqresp_cnt
Definition: structs.h:497
int nelmb
Definition: structs.h:295
#define COMPLEX_ZERO
Definition: constants.h:44
Definition: structs.h:429
DOUBLE * ome
Definition: structs.h:558
DOUBLE * sig
Definition: structs.h:556
COMPLEX * zimp
Definition: structs.h:566
int ng
Definition: structs.h:621
int * iradian
Definition: structs.h:573
#define f1I2F
Definition: formats.h:73
struct acoustic_point * sources
Definition: structs.h:561
#define LOG_ERROR
Definition: logger.h:24
int ngamma
Definition: structs.h:619
struct solution_struct * solution
Definition: globals.h:52
#define COMPLEX
Definition: types.h:48
MPI_Datatype mpi_dipole_type
Definition: globals.h:129
MPI_Datatype mpi_vector_type
Definition: globals.h:97
BOOL pre_calculate_coefs
Definition: structs.h:519
BOOL printout
Definition: structs.h:486
enum SUPPORTED_SOLVERS solver
Definition: structs.h:507
struct modsol_info * modsolinfo
Definition: globals.h:44
DOUBLE z
Definition: structs.h:35
#define HZFREQ(x)
Definition: functions.h:28
DOUBLE maxsig
Definition: structs.h:478
struct vector g
Definition: structs.h:626
int * izimp
Definition: structs.h:568
#define LOG_DEBUG
Definition: logger.h:27
COMPLEX * gamma
Definition: structs.h:624
int nradian
Definition: structs.h:452
void matyfdc(COMPLEX cfreq, int icounter)
Definition: matrices.c:37
COMPLEX * radian
Definition: structs.h:571
DOUBLE minome
Definition: structs.h:468
void pre_mic(COMPLEX cfreq, int icounter)
Definition: pre_mic.c:36
void solve_linear_system(int icounter)
Definition: linsys.c:42
BOOL printvtk
Definition: structs.h:482
struct vector pos
Definition: structs.h:535
double DOUBLE
Definition: types.h:44
int rank
Definition: globals.h:79
DOUBLE x
Definition: structs.h:31
#define CREATE_VEC(v, lsize)
Definition: allocation.h:90
BOOL printmsh
Definition: structs.h:483
void matyfd(COMPLEX cfreq, int icounter)
Definition: matrices_precalc.c:37
void eval_nw(COMPLEX freq, int icounter)
Definition: nrwash.c:279
void gmres(int icounter)
Definition: ac_gmres.c:50
void mshoutb(int icounter, COMPLEX cfreq)
Definition: gmsh_out_b.c:39
int nome
Definition: structs.h:458
COMPLEX * func
Definition: structs.h:625
struct run_details * rundetails
Definition: globals.h:36
MPI_Datatype mpi_acoustic_point_type
Definition: globals.h:105
int read_acoustic_files()
Definition: read_acoustic_files.c:27
int mysql_save(COMPLEX cfreq)
Definition: mysqlsave.c:85
int read_boundary_conditions(COMPLEX cfreq, int ifreq)
Definition: read_boundary_conditions.c:28
void vtkoutb(int icounter, COMPLEX cfreq)
Definition: vtkout_b.c:42
int nplanw
Definition: structs.h:454
void fr_print_sol_cntr(FILE *file, int icntr, int icounter, COMPLEX cfreq)
Definition: print_solution.c:137
Defines an acoustic point as its position and its amplitude.
Definition: structs.h:533
void mshoutm(int icounter, COMPLEX cfreq)
Definition: gmsh_out_m.c:40
#define PI
Definition: constants.h:35
#define MAX_PATH
Definition: constants.h:29
void logger(int level, char *msg,...)
Definition: logger.c:56
#define calloc(n, size)
Definition: allocation.h:37
struct modgeom_info * modgeominfo
Definition: globals.h:38
int havemicsmesh
Definition: globals.h:72
DOUBLE y
Definition: structs.h:33