분류 전체보기70 0. 대학 미적분학을 시작하며... 오늘부터 차근차근 대학 미적분학에 대해서 조금씩 글을 쓰며 정리해나가려고 합니다. 주로 대학에서는 미적분학을 미적분학1과 미적분학2로 나누어 수업을 진행합니다. 미적분학 1에서는 일변수 함수에 대한 미분과 적분을 다루며 미적분학 2에서는 다변수 함수에 대한 적분과 벡터 적분을 다루게 됩니다. 일변수 함수의 경우에, 고등학교 교과과정에서 많이 접해볼 수 있기에 익숙하지만 다변수 적분과 벡터 적분은 생소한 내용이 많이 등장하므로 꼼꼼히 차근차근 공부해 두어야 합니다. 교재는 스튜어트 미적분학을 기준으로 글을 쓰려 합니다. 하지만 대부분의 대학교재가 스튜어트를 기반으로 만들어진 것이 때문에 어느 교재를 사용하든지 크게 상관을 없을 것 같습니다. 스튜어트 교재는 아래와 같습니다. 2020. 8. 8. React 작업 환경 설정 오늘은 리액트 라이브러리를 시행하기 위한 도구들을 설치해보도록 하겠다. Node.js Windows 의 경우엔, https://nodejs.org/ko/에서 좌측에 나타나는 LTS 버전을 설치한다. macOS / Linux 의 경우엔, nvm 이라는 도구를 사용하여 Node.js 를 설치하면 된다. $ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.8/install.sh | bash $ nvm install --lts Yarn 자바스크립트 세계에서 개발자는 패키지를 공유하고 이를 조립하여 프로젝트를 빌드하는 도구로 패키지 매니저를 사용한다. 전 세계적으로 가장 인기 있는 자바스크립트 패키지 매니저는 npm이다. 이것은 엄청난 양의 패키지.. 2020. 4. 22. React란 무엇인가? 오늘은 본격적으로 리액트를 학습하기 전에 리액트가 어떻게 만들어졌으며 무엇인지 알아보도록 하겠다. 일단, 프론트엔드 라이브러리 없이 웹사이트를 만들 수도 있다. 그리고 단순히 정적인 페이지를 만드는 것이라면 오히려 라이브러리의 사용이 더 불필요할 수도 있다. 왜냐하면 javascript를 익히지 않고도 html과 css만으로 구현이 가능하기 때문이다. 하지만 요즘 우리가 접하는 많은 사이트들은 정적인 웹 페이지가 아니라 동적인 웹 애플리케이션이다. 사용자의 동작에 반응하며 상태를 관리해줘야 한다. 게다가 다양한 UI와 서비스를 웹에서 제공하게 된다면 그 많은 요소들을 직접 관리하고 정리하는 것은 효율이 떨어진다. 이러한 효율성의 문제를 해결하기 위해 등장한 것이 프론트엔드 라이브러리이다. 대표적으로 An.. 2020. 4. 22. 2.4 SOP과 POS 그리고 카르노 맵 회로를 설계할 때 쓰는 표현 기법과 수단에 대해 알아보도록 하겠다. 원하는 결과물을 만들 수 있도록 중간 과정을 간략하게 할 수 있는 방법에 대해 소개하도록 하겠다. ● SOP sum of product 의 약자로 곱의 합이라는 의미이다. 곱으로 표현한 다음 그 결과 값을 더해주어 식으로 표현하는 방법이다. 예를 들어 설명하도록 하겠다. A B C F F' 0 0 0 0 ->m0 1 0 0 1 1 ->m1 0 0 1 0 0 ->m2 1 0 1 1 1 ->m3 0 1 0 0 0 ->m4 1 1 0 1 1 ->m5 0 1 1 0 1 ->m6 0 1 1 1 1 ->m7 0 A, B, C가 입력 값이고 F는 결과 값이며 F'는 결과 값을 반대로 바꾼 값이다. 위와 같이 TRUTH Table이 주어졌다고 가정했을.. 2020. 4. 6. 2.3 NAND, NOR, XOR, XNOR의 부울 대수 표현법 ·2.1과 2.2 장에서 살펴보았던 부울 대수에 대해 기억하고 있다면 오늘 다룰 내용은 그 범위를 크게 벗어나지 않는다. 물론, 이전에 다루지 않았던 게이트들에 대해서도 배워보도록 하겠지만 앞에 등장한 게이트만 이해했다면 작동 원리도 크게 다르지 않으니 쉽게 이해하리라 본다. NAND, NOR, XOR, XNOR 순서로 논리 게이트의 특징과 표현 방법을 알아보도록 하겠다. NAND Not + AND 라고 이해하면 쉽게 받아들일 수 있을 것이다. AND 연산을 한 다음에 마지막 출력 값을 반대로 바꿔주면 된다. X Y Z 0 0 1 0 1 1 1 0 1 1 1 0 그림을 보면 알 수 있듯이 ○이 출력에 붙어있다. "버블"이라고 불리는 이 소자로 인해서 값이 바뀌는 것이다. NOR Not+OR 이라고 이해하.. 2020. 4. 5. 2.1 Homogenous Linear ODEs of Second Order (2계 제차 선형 상미분방정식) 1계 상미분방정식을 넘어서 2계까지 확장해서 주저진 방정식의 해를 구해보도록 하자. 1장에 있는 내용을 숙지했다면 크게 다르지는 않다. 물론 추가적인 개념과 공식이 존재하지만 연장선 상에 있는 공식들이니 앞에 내용을 먼저 복습하고 돌아오는 것을 추천한다. $y'+p(x)y=r(x)$ 위의 식은 지난 단원들에서 많이 배웠던 1계 선형 상미분방정식의 전형적인 형태이다. 그렇다면 2계 선형 상미분방정식의 전형적인 식의 형태의 어떠할까? 우리가 오늘 배울 식의 standard form은 다음과 같다. $y'' +p(x)y'+q(x)=r(x)$ $y''$ 앞의 계수를 1로 만들어주면 우리는 그 식을 standard form이라 칭할 수 있다. 위의 식에서 $ r(x)=0$ 이면 우리는 이를 Homogenous (.. 2020. 4. 3. 2. Combinational Logic 2단원에서는 Boolean 대수와 그에 대한 정리를 다룰 예정이며 우리가 아직까지 보지 못했던 logic gate에 대해서 배우는 시간이 될 것 같다. 그리고 추가적으로 회로를 설계하는데 최적화된 방법도 다루어볼까 한다. 2.1 Combinational Logic VS Sequential Logic Combinational Logic 출력 데이터는 입력 데이터에만 의존 회로에 memory element 없음 Binary adder, ALU 등이 이에 속함 Sequential Logic 출력 데이터가 현재의 입력과 이전의 입력에 의존함 몇개의 출력 데이터가 되돌아가서 입력 데이터로 작용함 전자 잠금 장치, 신호등이 이에 속함 2.2 Boolean Algebra Laws & Thoerems Boolean A.. 2020. 3. 29. 1. introduction 이번 단원에서 다룰 내용은 크게 어렵지 않다. 말 그대로 간략적인 소개를 하는 단원이다. electronic system의 구성요소와 게이트의 구분 그리고 작동방식 등이 소개되어있는 단원이다. electronic system electronic system은 크게 2가지로 분류할 수 있다. Hardware component와 Software component이다. 그럼 이 2가지 component는 어떻게 구성되어있는 것인가? Hardware -CPU(Central Processing Unit) or microprocessor or DSP Core -Application processor -Digital logic circuit ( modem, video codec, audio codec, multili.. 2020. 3. 29. 디지털 논리회로를 배우는 목적 4차 산업혁명을 맞이하여 코딩교육이 열풍이다. C, C++, java, python 등 수 많은 언어들이 등장 응용되고 있다. 하지만 많은 사람들이 현재 우리가 쓰는 컴퓨터 언어가 컴퓨터 내부에서 어떤 식으로 작동하는지 공부하는 사람들은 그렇게 많지는 않은 것 같다. 이 글을 쓰는 필자 역시 그런 사람이었다. 우리가 디지털 논리 회로를 배우는 목적은 간단하다. 컴퓨터 안에서 어떤 방식으로 논리적인 연산이 이루어지는지 확인하기 위해서이다. 그리고 더 나아가 논리적인 회로를 직접 설계하여 우리가 원하는 작업을 실행시킬 수 있도록 하는 것이다. 이러한 내용을 학습하면 위에서 언급한 프로그래밍 언어들이 왜 개발되었는지 알게 될 것이다. 그리고 개발자분들께 엄청난 감사함을 느낄 것이다. 필자가 사용할 교재는 다음.. 2020. 3. 28. 1.7 Existence and Uniqueness of solutions for IVPs 오늘은 초기값 문제에 대한 해의 존재성과 유일성을 다뤄보도록 하겠다. 사실 이 단원은 증명이 필요한 단원이기는 하나 우리가 사용할 정리에 대한 증명은 공학수학을 벗어나는 내용이기에 생략하도록 하고 정리를 활용하는 방법에 대해서만 알아보도록 하자. 오늘 우리가 다룰 내용에는 case가 3가지 정도 존재한다. case1) 해가 없는 경우 $|y'|+|y|=0, y(0)=1$ case2) 해가 유일한 경우 $y'=2x, y(0)=1$ $y=x^2+1$ case3) 해가 무수히 많은 경우 $xy'=y-1, y(0)=1$ $y=1+cx$ 다음으로 위의 3가지 경우를 다룰 수 있는 정리에 대해 알아보록 하자. $y'=f(x,y), y(x.)=y. $ Thm1) Existence Theorem (존재정리) IVP $.. 2020. 3. 28. 1.5 Population Dynamics -개체군 역학 1. exponential growth (지수적 증가) $y(t)$ : t시간의 인구 $y'=dy/dt=ry$ (r>0) : 현재 인구의 변화율 $y(0)=A$ $y'/y=r$ => $ln|y|=rt+c$ => $y(t)=e^{rt+c}$ $y(t)=Ae^{rt}$ 위의 식은 지수적인 증가만을 의미한다. 하지만 인구는 늘어날 수도 있지만 줄어들 수도 있다. 그렇다면 개체의 수의 감소를 어떻게 수학적으로 모델링할 수 있을까? 이때 사용하는 것이 logistic growth이다. 2. logistic growth logisitc equation: $y'=Ay-By^2$ if B=0 --> (i) $-By^2$ --> Breaking term (제동항) 제동항은 개체수의 무한한 증가를 방지한다. $y'=Ay(.. 2020. 3. 28. outline과 full width 버튼 오늘 만들 버튼은 아래와 같다. 기존에 우리가 작성했던 Button.js와 Button.scss 그리고 App.js 파일을 vscode에서 열어준다. 오늘 작성할 내용에 이전에 작업했던 코드와 크게 다르지는 않다. classNames() 함수의 파라미터에 다음과 같이 {outline, fullwidth}를 추가해준다. 기존에 방식과 달리 { }를 사용한 이유는 outline과 fullwidth로 받아올 값이 Boolean값이기 때문이다. 우리는 이 Boolean값을 이용하여 버튼의 윤곽과 폭을 설정하도록 하겠다. Button.js 파일에 아래와 같이 작성해주면 된다. import React from 'react'; import classNames from 'classnames'; import './But.. 2020. 3. 27. 이전 1 2 3 4 5 6 다음