The error statement is pretty clear. These lines:
Real, allocatable :: x(:),u(:),a(:),b(:),c(:),d(:)
Real:: m,dx,dt,Tmax
Integer:: j,NI,JI
have to appear before this line:
call thomas(a,b,c,d,JI)
I'm not sure why you're calling the Thomas solver before you even assemble a, b, c, and d...
If you want to have your domain covered by circles that don't overlap, but each touch the circles next to them, then stop thinking about circles for a minute. Instead, think of a hexagonal tessellation, e.g.
Now, inscribe each of these circles with a circle. Out of all possible ways to...
If xwb's tip doesn't work with your compiler, you may have another option. Do you know anything about the possible values that X could be initialized to? For example, the logic of your code might only allow X to be a positive number. If this is the case, you could initialize X to a negative...
If you want to allow for the possibility that the matrix is not square, then you will need to change this:
! allocate space enogh of matriz
ALLOCATE ( matriz(siz_matriz, &
siz_matriz), &
stat=situation_of_allocation )
to something like this:
ALLOCATE ( matrix(number_of_rows...
If I remember correctly, a double pendulum is described by a system of two second-order non-linear ordinary differential equations. Because of the non-linear part, you'll need to resort to numerical techniques. There are many algorithms for solving ODEs. The easiest to code would probably be...
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.