Vinnaren i pepparkakshustävlingen!
2015-10-03, 17:01
  #1
Medlem
Tja! Sprungit in i ett problem här och vet inte hur jag ska fortsätta.

function [A,x] = xxx(L,N)

x = linspace(0,L,N+1)';
x(1) = []; % Remove first point
h = x(2)-x(1);

e = ones(N,1);
%%% Fourth derivative matrix
A = spdiags([e -4*e 6*e -4*e e], -2:2, N, N);

%%% Clamped-free boundary conditions
A(1,1:4) = [16 -9 8/3 -1/4];
A(end-1,end-3:end) = [16/17 -60/17 72/17 -28/17];
A(end,end-3:end) = [-12/17 96/17 -156/17 72/17];

A = A/h^4;

A = full(A);
cond(A,inf)



Det jag vill göra är att, i ett annat program, kalla på funktionen xxx med ett konstant värde på L och en vector N där jag bestämmer längden. Tex N =[ 1, 50, 100, 200, 400, 500, etc] och sedan då få ut olika värden på cond(A, inf) beroende på vilket värde av N som läses in.

Jag inser att man behöver ha tex:
n = length(N)

för att sedan skriva for loppen, men förstår inte hur detta ska gå till. Hjälp?


Uppskattas enormt!

Mvh Thuug
Citera
2015-10-03, 17:08
  #2
Medlem
Balkan-Kings avatar
Om du vil implementere det i Python eller C kan jeg muligvis hjælpe dig. Syntax blir naturligvis forskellig fra Matlab.
Citera
2015-10-03, 17:16
  #3
Medlem
Citat:
Ursprungligen postat av Balkan-King
Om du vil implementere det i Python eller C kan jeg muligvis hjælpe dig. Syntax blir naturligvis forskellig fra Matlab.

ja gärna, skiljer inte syntaxen alltför mycket borde jag ju kunna förstå och skriva om det bara
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback