AcouSTO  version 2.0

◆ estimate_memory()

MEMORY estimate_memory ( )
48  {
49  MEMORY ESTIMATED_MEMORY = 0L;
50 
52  ESTIMATED_MEMORY += (MEMsizeof(struct bodycoefs_struct));
53  ESTIMATED_MEMORY += 2L
55  * TOMEMORY(modgeominfo->ncntr) * MEMsizeof(DOUBLE); // B Body Coefs
56  ESTIMATED_MEMORY +=
58 
59  ESTIMATED_MEMORY += TOMEMORY(modgeominfo->ncntr+modgeominfo->nchief)
60  * MEMsizeof(DOUBLE); // temporary vector
61  ESTIMATED_MEMORY += MEMsizeof(struct micscoefs_struct);
62  ESTIMATED_MEMORY += 2L * TOMEMORY(modgeominfo->nmics)
63  * TOMEMORY(modgeominfo->nelmb) * MEMsizeof(DOUBLE); // 2 mics B coefficients
64  ESTIMATED_MEMORY += 3L * TOMEMORY(modgeominfo->nmics)
65  * TOMEMORY(modgeominfo->nelmb) * MEMsizeof(DOUBLE); // 3 mics C coefficients
66  }
67  ESTIMATED_MEMORY +=
68  (TOMEMORY(modgeominfo->nnodb) * MEMsizeof(struct vector)); // Nodes
69  ESTIMATED_MEMORY += (TOMEMORY(modgeominfo->nvelb) * MEMsizeof(int)); // Vertex Indices
70  ESTIMATED_MEMORY += (TOMEMORY(modgeominfo->nelmb) * MEMsizeof(int)); // Index Vector
71  ESTIMATED_MEMORY += (TOMEMORY(modgeominfo->nelmb) * MEMsizeof(int)); // Index Vector
72  ESTIMATED_MEMORY += (TOMEMORY(modgeominfo->nelmb) * MEMsizeof(int)); // mvtrb
73  ESTIMATED_MEMORY += (TOMEMORY(modgeominfo->nelmb) * MEMsizeof(int)); // kcreb
74  ESTIMATED_MEMORY += (TOMEMORY(modgeominfo->nelmb) * MEMsizeof(int)); // kelmb
75  ESTIMATED_MEMORY +=
76  (TOMEMORY(modgeominfo->nmics) * MEMsizeof(struct vector)); // microphones
77  ESTIMATED_MEMORY += (TOMEMORY(modgeominfo->nchief)
78  * MEMsizeof(struct vector)); // chief
79  ESTIMATED_MEMORY += (TOMEMORY(modgeominfo->ncntr+modgeominfo->nchief)
80  * MEMsizeof(struct vector)); // ctrl + chief
81  ESTIMATED_MEMORY +=
82  (TOMEMORY(modgeominfo->ncntr) * MEMsizeof(struct vector)); // cntr
83  ESTIMATED_MEMORY +=
84  (TOMEMORY(modgeominfo->nelmb) * MEMsizeof(struct panel4)); // elements
85  ESTIMATED_MEMORY += MEMsizeof(struct run_info);
86  ESTIMATED_MEMORY += MEMsizeof(struct run_details);
87  ESTIMATED_MEMORY += MEMsizeof(struct modgeom_info);
88  ESTIMATED_MEMORY += MEMsizeof(struct modcoefac_info);
89  ESTIMATED_MEMORY += MEMsizeof(struct modcoemic_info);
90  ESTIMATED_MEMORY += MEMsizeof(struct modsol_info);
91  ESTIMATED_MEMORY += MEMsizeof(struct solution_struct);
92  ESTIMATED_MEMORY += ((strlen(datfile) + 1) * MEMsizeof(char)); // datfile
93  ESTIMATED_MEMORY += (TOMEMORY(modsolinfo->n_freqresp_cnt) * MEMsizeof(int)); // ctrl freq response
94  ESTIMATED_MEMORY += (TOMEMORY(modsolinfo->n_freqresp_mic) * MEMsizeof(int)); // mics freq response
95 
100 }
102  ESTIMATED_MEMORY+= TOMEMORY(modgeominfo->nmics)*MEMsizeof(COMPLEX);//
103  ESTIMATED_MEMORY+= TOMEMORY(modgeominfo->nmics)*MEMsizeof(COMPLEX);//
104  ESTIMATED_MEMORY+= TOMEMORY(modgeominfo->nmics)*MEMsizeof(COMPLEX);//
105  ESTIMATED_MEMORY+= TOMEMORY(modgeominfo->ncntr)*MEMsizeof(COMPLEX);//
106  ESTIMATED_MEMORY+= TOMEMORY(modgeominfo->ncntr)*MEMsizeof(COMPLEX);//
107  ESTIMATED_MEMORY+= TOMEMORY(modgeominfo->ncntr)*MEMsizeof(COMPLEX);//
108  ESTIMATED_MEMORY+= TOMEMORY(modgeominfo->ncntr)*MEMsizeof(COMPLEX);//
109  ESTIMATED_MEMORY+= TOMEMORY(modgeominfo->ncntr)*MEMsizeof(COMPLEX);//
110  ESTIMATED_MEMORY+= TOMEMORY(modgeominfo->nmics)*MEMsizeof(COMPLEX);
111  ESTIMATED_MEMORY+= TOMEMORY(modgeominfo->nmics)*MEMsizeof(COMPLEX);
112  ESTIMATED_MEMORY += TOMEMORY(modsolinfo->nsig ) * MEMsizeof(DOUBLE);
113  ESTIMATED_MEMORY += TOMEMORY(modsolinfo->nome ) * MEMsizeof(DOUBLE);
114  ESTIMATED_MEMORY += TOMEMORY(modsolinfo->nsourc )
115  * MEMsizeof(struct acoustic_point);
116  ESTIMATED_MEMORY += TOMEMORY(modsolinfo->ndipoles )
117  * MEMsizeof(struct dipole);
118  ESTIMATED_MEMORY+= (modsolinfo->nimped > 0 ) ? TOMEMORY(modsolinfo->nimped) * MEMsizeof(COMPLEX) : 0L;
119  ESTIMATED_MEMORY +=
120  (modsolinfo->nimped > 0) ?
121  TOMEMORY(modsolinfo->nimped) * MEMsizeof(int) : 0L;
122  ESTIMATED_MEMORY+= (modsolinfo->nradian > 0 ) ? TOMEMORY(modsolinfo->nradian) * MEMsizeof(COMPLEX) : 0L;
123  ESTIMATED_MEMORY +=
124  (modsolinfo->nradian > 0) ?
125  TOMEMORY(modsolinfo->nradian) * MEMsizeof(int) : 0L;
126  ESTIMATED_MEMORY += TOMEMORY(modsolinfo->nplanw)
127  * MEMsizeof(struct acoustic_point);
128  ESTIMATED_MEMORY += TOMEMORY(modsolinfo->n_freqresp_mic) * MEMsizeof(int);
129  ESTIMATED_MEMORY+= TOMEMORY(modgeominfo->ncntr)*MEMsizeof(COMPLEX);
130  ESTIMATED_MEMORY+= TOMEMORY(modgeominfo->nmics)*MEMsizeof(COMPLEX);
131  ESTIMATED_MEMORY+= TOMEMORY(modgeominfo->nmics)*MEMsizeof(COMPLEX);
132  ESTIMATED_MEMORY+= TOMEMORY(modgeominfo->nmics)*MEMsizeof(COMPLEX);
133  ESTIMATED_MEMORY+= TOMEMORY(modgeominfo->nmics)*MEMsizeof(COMPLEX);
134  ESTIMATED_MEMORY+= TOMEMORY(modgeominfo->ncntr)*MEMsizeof(COMPLEX);
135  ESTIMATED_MEMORY += (MEMsizeof(struct geometry_struct)); // allocating structure
136  ESTIMATED_MEMORY += (MEMsizeof(struct file_info));
137  ESTIMATED_MEMORY += (MEMsizeof(struct sphere_geom));
138  ESTIMATED_MEMORY += (MEMsizeof(struct cylinder_geom));
139  ESTIMATED_MEMORY += (MEMsizeof(struct nodes_geom));
140  ESTIMATED_MEMORY += (MEMsizeof(struct plate_geom));
141 
142  return ESTIMATED_MEMORY;
143 }
Sphere.
Definition: structs.h:198
Definition: structs.h:392
Definition: structs.h:355
int ncntr
Definition: structs.h:299
int nimped
Definition: structs.h:450
Holds Solution values.
Definition: structs.h:553
Parameters and variables for the solution Module.
Definition: structs.h:436
struct to hold Coefficients at the body.
Definition: structs.h:379
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 MEMORY
Definition: types.h:26
int nchief
Definition: structs.h:301
int nsig
Definition: structs.h:456
int n_freqresp_cnt
Definition: structs.h:497
int nvelb
Definition: structs.h:297
int nelmb
Definition: structs.h:295
int nnodb
Definition: structs.h:293
Details about the run.
Definition: structs.h:131
Definition of a quadrilateral panel.
Definition: structs.h:44
#define COMPLEX
Definition: types.h:48
Plate.
Definition: structs.h:226
BOOL pre_calculate_coefs
Definition: structs.h:519
struct modsol_info * modsolinfo
Definition: globals.h:44
int nmics
Definition: structs.h:304
#define TOMEMORY(x)
Definition: functions.h:31
Geometry common variables.
Definition: structs.h:317
int nradian
Definition: structs.h:452
double DOUBLE
Definition: types.h:44
char * datfile
Definition: globals.h:29
Structure containing names of additional files.
Definition: structs.h:402
Structure containing information about the run.
Definition: structs.h:86
struct to hold Coefficients at microphones
Definition: structs.h:364
int nome
Definition: structs.h:458
Cylinder.
Definition: structs.h:210
int nplanw
Definition: structs.h:454
Defines an acoustic point as its position and its amplitude.
Definition: structs.h:533
#define MEMsizeof(x)
Definition: functions.h:32
struct modgeom_info * modgeominfo
Definition: globals.h:38
General information on geometry evaluation module.
Definition: structs.h:279
External geometry stored in file using acousto native format.
Definition: structs.h:241