00001 #if !defined( SED_WAVE_H ) 00002 #define SED_WAVE_H 00003 00004 #include <glib.h> 00005 00006 #include "utils/eh_types.h" 00007 00008 new_handle( Sed_wave ); 00009 new_handle( Sed_ocean_storm ); 00010 00011 Sed_wave sed_wave_new ( double h , double k , double w ); 00012 Sed_wave sed_wave_copy ( Sed_wave dest , Sed_wave src ); 00013 Sed_wave sed_wave_dup ( Sed_wave src ); 00014 gboolean sed_wave_is_same( Sed_wave w_1 , Sed_wave w_2 ); 00015 Sed_wave sed_wave_destroy( Sed_wave w ); 00016 00017 double sed_wave_height ( Sed_wave w ); 00018 double sed_wave_number ( Sed_wave w ); 00019 double sed_wave_length ( Sed_wave w ); 00020 double sed_wave_frequency ( Sed_wave w ); 00021 double sed_wave_period ( Sed_wave w ); 00022 double sed_wave_phase_velocity ( Sed_wave w ); 00023 gboolean sed_wave_is_bad ( Sed_wave w ); 00024 00025 Sed_wave sed_gravity_wave_new ( Sed_wave w_infinity , double h , Sed_wave new_wave ); 00026 Sed_wave sed_gravity_wave_set_frequency ( Sed_wave a , double w , double h); 00027 Sed_wave sed_gravity_wave_set_number ( Sed_wave w , double k , double h); 00028 Sed_wave sed_gravity_wave_set_height ( Sed_wave w , Sed_wave w_infinity , double h ); 00029 double sed_gravity_wave_deep_water_height ( Sed_wave w ); 00030 double sed_gravity_wave_deep_water_wave_number( Sed_wave w ); 00031 00032 gboolean sed_wave_is_breaking( Sed_wave w , double h ); 00033 00034 double sed_wave_break_depth( Sed_wave w ); 00035 00036 double sed_dispersion_relation_frequency ( double water_depth , double wave_number ); 00037 double sed_dispersion_relation_wave_number( double water_depth , double frequency ); 00038 00039 Sed_ocean_storm sed_ocean_storm_new ( void ); 00040 Sed_ocean_storm sed_ocean_storm_destroy( Sed_ocean_storm s ); 00041 00042 gssize sed_ocean_storm_index ( Sed_ocean_storm s ); 00043 double sed_ocean_storm_val ( Sed_ocean_storm s ); 00044 double sed_ocean_storm_duration ( Sed_ocean_storm s ); 00045 double sed_ocean_storm_duration_in_seconds( Sed_ocean_storm s ); 00046 double sed_ocean_storm_wave_height ( Sed_ocean_storm s ); 00047 double sed_ocean_storm_wave_number ( Sed_ocean_storm s ); 00048 double sed_ocean_storm_wave_length ( Sed_ocean_storm s ); 00049 double sed_ocean_storm_wave_freq ( Sed_ocean_storm s ); 00050 double sed_ocean_storm_wave_period ( Sed_ocean_storm s ); 00051 double sed_ocean_storm_phase_velocity ( Sed_ocean_storm s ); 00052 00053 Sed_ocean_storm sed_ocean_storm_set_wave ( Sed_ocean_storm s , Sed_wave w ); 00054 Sed_ocean_storm sed_ocean_storm_set_index ( Sed_ocean_storm s , gssize ind ); 00055 Sed_ocean_storm sed_ocean_storm_set_duration ( Sed_ocean_storm s , double dt_in_days ); 00056 Sed_ocean_storm sed_ocean_storm_set_val ( Sed_ocean_storm s , double val ); 00057 00058 gssize sed_ocean_storm_fprint( FILE* fp , Sed_ocean_storm s ); 00059 00060 #endif