본문 바로가기
  • 포르쉐타고싶다

전체 글93

[MATLAB] MATLAB - 2D 그래프 1. y값만 입력 plot([1, 2, 3]) 2. x값 리스트와 y값 리스트 입력 plot([2, 5, 7], [1, 2, 3]) 3. 명령창에서 그래프 창 지우기 >> close 4. cos그래프 그리기: linspace x = linspace(0, 4 * pi, 1000) % 0부터 4*pi 사이를 1000등분 y = cos(x) plot(x, y) 5. plot 꾸미기 x = linspace(0, 4 * pi, 1000) % 0부터 4*pi 사이를 1000등분 y = cos(x) plot(x, y, 'r:', 'LineWidth', 5) % 'r:' : 빨간색 점선, 두께는 5 xlabel('x축', 'fontsize', 20) % x축 라벨 폰트사이즈 설정 ylabel('x축') title('x.. 2021. 8. 15.
[MATLAB] MATLAB 반복문/조건문 1. for문 선언 for (i = 1: 1: 3) % 초기값, step, 마지막값 i end >> loop_test i = 1 i = 2 i = 3 >> * step 생략하면 기본으로 1씩 증가하는 loop가 실행된다 * step -1로 해서 거꾸로 loop 가능 2. while i = 0; while i > while_test i = 1 i = 2 i = 3 >> 3. if문 a = [1 2 3 1 0 1]; for (x = 1: 1:length(a)) i = a(x); % matlab에서 리스트의 인덱싱은 소괄호로 한다. if i == 1 disp('a는 입니다.') % disp는 print, console.log역할 elseif i == 0 disp('a는 0입니.. 2021. 8. 15.
[MATLAB] MATLAB 함수 선언 1. 함수 선언 % 함수명과 파일명은 똑같이 해주는 것을 권장(필수인 경우도 있음) function y = a_plus_b(x1, x2) y = x1 + x2 end >> >> a_plud_b(1, 2) 'a_plud_b'은(는) 인식할 수 없는 함수 또는 변수입니다. 정정 제안: >> a_plus_b(1, 2) y = 3 ans = 3 >> d = a_plus_b(1, 2) y = 3 d = 3 >> **변수 선언에서 ';'를 붙여주면 결과창에서 해당 변수 값은 보여지지 않는다 % ㅎ마수명과 파일명은 똑같이 해주는 것을 권장(필수인 경우도 있음) function y = a_plus_b(x1, x2) y = x1 + x2; % ';': 변수 선언에서 ;를 붙여주면 명령창에서 해당 변수값은 보여지지 않는다.. 2021. 8. 15.
[MATLAB] MATLAB 함수 기본 1. reshape: 행렬의 형태를 행 -> 열 순으로 읽어가면서 행렬의 형태를 바꾼다 a = [1 2 3; 4 5 6; 7 8 9; 10 11 12] % A만들기 b = reshape(a, 1, 12) c = reshape(a, 3, 4) 파일실행>> >> matlab_code_function a = 1 2 3 4 5 6 7 8 9 10 11 12 b = 1 4 7 10 2 5 8 11 3 6 9 12 c = 1 10 8 6 4 2 11 9 7 5 3 12 2. flip: 반전(뒤집기) % flip: 뒤집기 a = [1 2 3; 4 5 6; 7 8 9; 10 11 12] % A만들기 d = flipud(a) % ud: updown: 위아래로 뒤집기 e = fliplr(a) % leftright: 좌우반.. 2021. 8. 15.
[MATLAB] MATLAB 행렬 기본 1. 행렬 선언 >> a = [1 2; 3 4] a = 1 2 3 4 2. 행렬 연산 1) 자기연산 a = [1 2; 3 4] a = 1 2 3 4 >> a + 1 ans = 2 3 4 5 >> a * 2 ans = 2 4 6 8 2) 상호연산 >> a = [1 2; 3 4] a = 1 2 3 4 >> b = [5 6; 7 8] b = 5 6 7 8 >> a + b ans = 6 8 10 12 >> a * b // 행렬 곱 ans = 19 22 43 50 >> a .* b // 같은 좌표끼리 곱 ans = 5 12 21 32 3. 행렬 인덱싱 >> a = [1 2 3; 4 5 6; 7 8 9; 10 11 12] a = 1 2 3 4 5 6 7 8 9 10 11 12 >> a(2, 2) ans = 5 >>.. 2021. 8. 15.
[git] sourcetree에서 personal access token 등록하기 2021.08.13 이후로 github에 원격으로 push하기 위해선 personal access token으로 비밀번호를 수정해주어야 한다. remote: Support for password authentication was removed on August 13, 2021. Please use a personal access token instead. cli에서의 github 비밀번호 수정은 키체인 -> 'github'검색 -> 종류가 '인터넷 암호'인 항목 선택 -> 비밀번호 변경 이렇게 진행하면 된다. 하지만 sourcetree에서는 또 개별적으로 설정을 해줘야하는데 그 방법을 적어보고자 한다. 1. sourcetree 설정 -> 계정 2. 편집 -> 비밀번호 변경 여기서 발급받은 personal.. 2021. 8. 15.
[flutter] Request Entity Too Large에러 해결 클라이언트에서 서버로 데이터를 저장할 때 서버사이드에서 중간에 nginx를 놓은 상태에서 클라이언트에서 요청할 수 있는 request에는 한도가 있다. 이는 특히 사진과 같은 대용량파일을 request할 때 자주 발생하게 되는데 처음 보기에는 클라이언트 사이드의 에러인가 의문이 들 수 있다. 그 이유는 이 에러는 서버상의 로그에서는 뜨지 않고 클라이언트 상에서만 뜨기 때문이다. 이를 해결하려면 nginx에서 허용할 수 있는 body 용량의 최댓값을 수정해줘야 한다. 먼저 nginx 설정파일에 들어간다. :~$ sudo vim /etc/nginx/nginx.conf 그리고 아래의 변수설정을 추가해준다. http { . . . client_max_body_size 100M; . . } 이 변수를 따로 초기화.. 2021. 8. 10.
[node.js] nodemailer 구현 방법 1. nodemailer 라이브러리 설치 npm i nodemailer 2. env파일에 메일 정보추가 NODEMAILER_USER = "[이메일]" NODEMAILER_PASS = "[비밀번호]" ** 이 때 저 비밀번호는 계정의 비밀번호가 아니다! @ google에서 1) 내 계정 2) 보안 -> 내 비밀번호 3) 앱 비밀번호 추가: 이름 설정 이 비밀번호를 사용해야 한다. 3. nodemailer 객체 초기화 let transporter = nodemailer.createTransport({ service: 'gmail', host: 'smtp.gmail.com', port: 587, secure: false, auth: { user: process.env.NODEMAILER_USER, pass: .. 2021. 8. 9.