Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
uvahotspot
GitHub Repository: uvahotspot/HotSpot
Path: blob/master/materials.h
612 views
1
#ifndef MATERIALS_H
2
#define MATERIALS_H
3
4
#include "util.h"
5
6
#define SOLID_MATERIAL 0
7
#define FLUID_MATERIAL 1
8
9
typedef struct material_t_st
10
{
11
int material_type; // solid or fluid
12
double thermal_conductivity;
13
double volumetric_heat_capacity;
14
double dynamic_viscosity;
15
} material_t;
16
17
typedef struct materials_list_t_st
18
{
19
// number of materials entries
20
int size;
21
22
// names of all materials
23
char **names;
24
25
// properties of each material
26
material_t *material_properties;
27
} materials_list_t;
28
29
void default_materials(materials_list_t *materials_list);
30
void materials_add_from_file(materials_list_t *materials_list, char *materials_filename);
31
void free_materials(materials_list_t *materials_list);
32
material_t get_material_properties(materials_list_t *materials_list, char *name);
33
double get_material_thermal_conductivity(materials_list_t *materials_list, char *name);
34
double get_material_volumetric_heat_capacity(materials_list_t *materials_list, char *name);
35
double get_material_dynamic_viscosity(materials_list_t *materials_list, char *name);
36
37
#endif
38
39