separated constant part in module_w_assembly.f90
[wrf-fire-matlab.git] / femwind / w_assembly_test.m
blobfbe9e523c58e881d42d61ce5eba9fc53c91b6c98
1 format compact
2 disp('w_assembly_test')
3 nel=[5,4,3]
4 %nel=[1 1 1]
5 n=nel+1
6 h = [1,1,1]
7 expand=1.3 
8 A = diag([1 1 1])
9 %lambda=[]
10 params=[]
11 %iflags = [2 1 1]
12 %iflags = iflags(:)
13 %In femwind main 1 is added to each element
14 lambda = rand(nel(1)+1,nel(2)+1,nel(3)+1);
16 X = regular_mesh(nel,h,expand);
17 X = add_terrain_to_mesh(X, 'hill', 'squash', 0.1);
18 [CX,CH] = center_mesh(X); % get midpoints of elements
19 U0={rand(nel),rand(nel),rand(nel)};
21 % test same results for ndt_mult from matlab and fortran
22 if exist('fortran/w_assembly_test.exe')
23 disp('testing if same result in fortran')
24     err=w_assembly_fortran(A,X, U0,lambda, params);
25     if abs(err)<1e-6
26     fprintf('error %g OK\n',err)
27     else
28     error(sprintf('error %g too large',err))
29     end
30 else
31     warning('fortran/w_assembly_test.exe not available')
32 end