plugin_src/load/irregular_load.c File Reference

#include <stdio.h>
#include <math.h>
#include "crusde_api.h"

Include dependency graph for irregular_load.c:

Include dependency graph

Functions

const char * get_name ()
const char * get_version ()
const char * get_authors ()
const char * get_description ()
const PluginCategory get_category ()
void request_plugins ()
 Request necessary plugins: crusde_request_green_plugin("elastic halfspace (pinel)").
int register_output_fields ()
 Register output fields for spatial directions this Green's function calculates.
void run ()
 Performs the fast convolution.
void clear ()
void gmt_print_double_array (int m, int n, double *M)
void print_double_array (int size_x, int size_y, double *M)
void init ()
 Initialization of the convolution. Allocation of memory for inputs and outputs.
void register_parameter ()
 Register parameters this Kernel claims from the input.
double get_value_at (int x, int y, int t)
 Returns the Load of a disk at Point (x,y) at time t.

Variables

double rho
const char * load_file
int dS
double rho_dS_const
double * load_array = NULL
int nx = -1 ny=-1

Detailed Description

Read load from a file that must be in the following format:

Lon Lat Height

with Lon and Lat being integers in Lambert coordinates and Height determining the load height at the point (Lon,Lat).\


Function Documentation

void clear  ) 
 

frees load array that was read from file

const char* get_authors  ) 
 

const PluginCategory get_category  ) 
 

const char* get_description  ) 
 

const char* get_name  ) 
 

double get_value_at int  x,
int  y,
int  t
 

Returns the Load of a disk at Point (x,y) at time t.

Computes the euclidean distance of Point (x,y) to (center_x, center_y). If this distance is less or equal to disk_radius the load will be returned, zero otherwise.

Parameters:
x The x-Coordinate of the wanted value.
y The y-Coordinate of the wanted value.
t The time-Coordinate of the wanted value (set to NO_TIME in non-temporal modelling environment).
Returns:
The load at Point (x,y,t).

const char* get_version  ) 
 

void gmt_print_double_array int  m,
int  n,
double *  M
 

void init  ) 
 

Initialization of the convolution. Allocation of memory for inputs and outputs.

This function must not be called before register_parameter() unless none of the necessary values depends on parameters provided by the user, which are only set after they have been registered. This function is called some time after register_parameter().

void print_double_array int  size_x,
int  size_y,
double *  M
 

int register_output_fields  ) 
 

Register output fields for spatial directions this Green's function calculates.

empty

void register_parameter  ) 
 

Register parameters this Kernel claims from the input.

This function calls register_load_param() defined in crusde_api.h to register references to parameters this Green's function will need to operate properly. In case an XML is used to configure the experiment, the reference to this parameter will be identified by the string passed as second argument to register_green_param().

This function registers the references in the following order:

  1. rho, XML config identifier is "rho", SI-unit [kg/m^3]

See also:
register_load_param()

register_parameter() (temp_plugin.c.tmp)

void request_plugins  ) 
 

Request necessary plugins: crusde_request_green_plugin("elastic halfspace (pinel)").

empty

void run  ) 
 

Performs the fast convolution.

empty


Variable Documentation

int dS
 

Area around point P(x,y) [m^2]

double* load_array = NULL
 

const char* load_file
 

Name of the file that contains irregular load

int nx = -1 ny=-1
 

double rho
 

Density of the load [kg/m^3]

double rho_dS_const
 

rho_dS_const = rho * dS [kg/m]


Generated on Sun Jul 29 08:17:29 2007 for CrusDe by doxygen 1.3.8