gCAD3D 2.35
ut_math.c File Reference

math (Cholesky, Fresnel, ..) More...

#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#include <string.h>
#include "../ut/ut_geo.h"
#include "ut_math.h"


#define MAX_FRESNEL   0.00001


int UTM_geomSeq_solv (int mode, double *a, double *ae, double *q, int *n)
int UTM_zeros_cubicpol (dcomplex zero[], int zmult[], polcoeff_d3 *pol)
int UTM_zeros_quarticpol (dcomplex zero[], polcoeff_d4 *pol)
dcomplex UTM_cx_alg2pol (dcomplex *cx)
dcomplex UTM_cx_pol2alg (dcomplex *cx)
dcomplex UTM_cx_root (dcomplex *cx)
int UTM_sign_3cx (dcomplex *cx1, dcomplex *cx2, dcomplex *cx3, double q)
dcomplex UTM_cx_cxaddcx (dcomplex *cx1, dcomplex *cx2)
dcomplex UTM_cx_cxsubtcx (dcomplex *cx1, dcomplex *cx2)
dcomplex UTM_cx_cxmultcx (dcomplex *cx1, dcomplex *cx2)
int UTM_scale_4db (double *scf, double *d1, double *d2, double *d3, double *d4, double lim)
double UTM_db_bincoeff (long n, long k)
double UTM_db_binquot (long n, long i, long j)
int UTM_pol_polmultpol (double *polm, int deg1, double *pol1, int deg2, double *pol2)
int UTM_pol_Bernstein (Polynom_ *polB)
int UTM_mat_CholFact (double *w, int nbands, int nrow, double *diag)
int UTM_mat_solveChol (double *b, double *w, int nbands, int nrow)
int UTM_SolLinEquSys (double *vloes, int anz_var, double *mata, double *matb)
int UMT_FresnelIntgls (double *fci, double *fsi, double t1, double t2)

Detailed Description

math (Cholesky, Fresnel, ..)

UTM_mat_CholFact Cholesky-factorization of matrix
UTM_mat_solveChol solve Cholesky linear system
UTM_SolLinEquSys Solve <-- linear equation system
UMT_FresnelIntgls Fresnel integrals <-- two parameters
UTM_geomSeq_solv Solve geometr. Reihe ae = a + a*q + a*q^2 + .. + a*q^n
-------------- polynoms ----------------------------------
UTM_zeros_cubicpol Zeros of a cubic polynomial.
UTM_zeros_quarticpol Zeros of a quartic polynomial.
UTM_pol_polmultpol multiply two polynomials
UTM_pol_Bernstein compute Bernstein polynomials
-------------- complex numbers ---------------------------
UTM_cx_alg2pol Complex algebraic to polar.
UTM_cx_cxaddcx Complex addition.
UTM_cx_cxmultcx Complex multiplication.
UTM_cx_cxsubtcx Complex subtraction.
UTM_cx_pol2alg Complex polar to algebraic.
UTM_cx_root Complex root.
UTM_sign_3cx Sign 3 complex numbers.
-------------- double numbers ----------------------------
UTM_db_bincoeff compute binomial coefficient
UTM_db_binquot compute binomial quotient
UTM_scale_4db Scale down 4 double numbers

Macro Definition Documentation

#define MAX_FRESNEL   0.00001

Function Documentation

int UTM_geomSeq_solv ( int  mode,
double *  a,
double *  ae,
double *  q,
int *  n 
int UTM_zeros_cubicpol ( dcomplex  zero[],
int  zmult[],
polcoeff_d3 pol 
int UTM_zeros_quarticpol ( dcomplex  zero[],
polcoeff_d4 pol 
dcomplex UTM_cx_alg2pol ( dcomplex cx)
dcomplex UTM_cx_pol2alg ( dcomplex cx)
dcomplex UTM_cx_root ( dcomplex cx)
int UTM_sign_3cx ( dcomplex cx1,
dcomplex cx2,
dcomplex cx3,
double  q 
dcomplex UTM_cx_cxaddcx ( dcomplex cx1,
dcomplex cx2 
dcomplex UTM_cx_cxsubtcx ( dcomplex cx1,
dcomplex cx2 
dcomplex UTM_cx_cxmultcx ( dcomplex cx1,
dcomplex cx2 
int UTM_scale_4db ( double *  scf,
double *  d1,
double *  d2,
double *  d3,
double *  d4,
double  lim 
double UTM_db_bincoeff ( long  n,
long  k 
double UTM_db_binquot ( long  n,
long  i,
long  j 
int UTM_pol_polmultpol ( double *  polm,
int  deg1,
double *  pol1,
int  deg2,
double *  pol2 
int UTM_pol_Bernstein ( Polynom_ polB)
int UTM_mat_CholFact ( double *  w,
int  nbands,
int  nrow,
double *  diag 
int UTM_mat_solveChol ( double *  b,
double *  w,
int  nbands,
int  nrow 
int UTM_SolLinEquSys ( double *  vloes,
int  anz_var,
double *  mata,
double *  matb 
int UMT_FresnelIntgls ( double *  fci,
double *  fsi,
double  t1,
double  t2